发表于: 2016-04-14 03:13:01
1 2086
今天完成的事情:
。。摘抄了某滑动条写法。。
var scale = function (btn, bar, title) {
this.btn = document.getElementById(btn);
this.bar = document.getElementById(bar);
this.title = document.getElementById(title).valueOf();
this.step = this.bar.getElementsByTagName("div")[0];
this.init();
};
scale.prototype = {
init: function () {
var f = this, g = document, b = window, m = Math;
f.btn.onmousedown = function (e) {
var x = (e || b.event).clientX,
l = this.offsetLeft,
max = f.bar.offsetWidth - this.offsetWidth;
g.onmousemove = function (e) {
var thisX = (e || b.event).clientX;
var to = m.min(max, m.max(0, l + (thisX - x)));
f.btn.style.left = to + 'px';
f.ondrag(m.round(m.max(0, to / max) * 11)+4, to);
b.getSelection ? b.getSelection().removeAllRanges() : g.selection.empty();
};
g.onmouseup = new Function('this.onmousemove=null');
};
},
ondrag: function (pos, x) {
this.step.style.width = Math.max(0, x) + 'px';
this.title.value = pos;
return total = pos;
}
};
new scale('slider', 'bar', 'qua');
这个实现了滑动功能,其中ondrag方法将滑块位置与总人数input的value相关联(init方法有点难消化。。先放着吧。。
然后我自己把加减按钮跟input的value也绑定了。。不过没法做到value与滑块位置的反绑。。有一点点思路。。不过目测跟init方法中的内容有关。。暂时吃不下来干脆先放着好了。。
明天计划的事情:
开始task3
遇到的问题:
$("#minus").click(function() {
total = $("#qua").val();
if(total > 4){ total--; }
$("#qua").val(total);
});
关于这样的,
$("#qua")
虽然没影响。。但这个部分会报错说选择器重复,怎么解决。。?
收获:
拾取【真·滑动条】x1,然而以我的等级还不能使用
评论