发表于: 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,然而以我的等级还不能使用


返回列表 返回列表
评论

    分享到