huankfy

明月出天山,苍茫云海间

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
      效果:按住shift在区域内连选-------按照shift键进行勾选时候,如果两次勾选之间有未勾选的复选框,自动进行勾选。
      主要思想:获取指定区域内的所有checkbox,在勾选时监视是否按住了shift,如果按住,两次勾选之间的复选框分别设置成勾选状态。
      目前测试了ie6、ie7、firefox,其它浏览器未做测试。用javascript完成。
      javascript部分:
javascript代码
      调用方式为:
new SectionCheckBoxSelector("chkContainer"); // chkContainer为checkbox所在容器的id
//
 new SectionCheckBoxSelector(chkContainer); // chkContainer为checkbox所在的容器
      html部分为:
Html部分

      缺点:
     设计的较差,SectionSelector暴露了太多给checkbox操作,整个对象附加到checkbox上。以下划线命名的部分应该做信息隐藏,而不是暴露,但能力有限,不知该如何做信息隐藏。
     限制:
     当前已处理onclick事件,checkbox的onclick事件不受影响。onmousedown和onmouseover未做处理,如果checkbox有这两个事件,会被劫持掉。

      ps:附上源码,请大家指正。SectionSelector源码下载

  源码做了修改,使用了事件注册机制,解决了内存泄露问题

posted on 2009-08-07 19:32  Yanbo.Hu  阅读(2309)  评论(1)    收藏  举报