我試圖構建一個可重用滑塊。創建一個可拖動滑塊,事件問題
我遇到了使其正常工作的問題。
function BasicSlider($cont) {
this.$cont = $cont;
this.$handle = null;
this.isMouseDown = false;
this.width = this.$cont.width();
this.init();
}
BasicSlider.prototype.init = function() {
this.buildMarkUp();
this.bindHandlers();
}
BasicSlider.prototype.buildMarkUp = function() {
var markUp = '<div class="basic-slider"><div class="basic-slider-trail"></div><div class="basic-slider-handle"></div></div>';
this.$cont.html(markUp);
this.$handle = $('.basic-slider-handle', this.$cont);
}
BasicSlider.prototype.bindHandlers = function() {
var prxDoDrag = $.proxy(function (evt) {
if (this.isMouseDown) {
this.$handle.css({'left' : evt.offsetX + 'px'});
}
}, this);
var prxDoMouseDown = $.proxy(function (evt) {
this.isMouseDown = true;
}, this);
var prxDoMouseUp = $.proxy(function (evt) {
this.isMouseDown = false;
}, this);
this.$handle.on('mousedown', prxDoMouseDown);
this.$handle.on('mouseup', prxDoMouseUp);
this.$cont.on('mousemove', prxDoDrag);
}
這裏的小提琴:http://jsfiddle.net/8uTVJ/
我不能使用的輸入[類型=範圍。我不能使用jqueryUi。
爲什麼我的mouseup不能觸發?
紡紗,你必須做出一個問題。這是一個問答。 – Grego