Mootools 1.4.1操作多个节点及其与jquery的差异

  今天在开发的过程中遇到了一个有趣的多节点操作的状况,拿出来和大家分享一下,同时比较一下Mootools和jquery的差异
  因为之前用jquery,现在转到mootools之后惯性思维一直不好改,结果今天发现了这个问题,如果把Mootools的语句用jquery的 写法来做是无论如何都没办法达到预期效果的,所以必须要把多个节点使用Array的each方法给拆解出来才可以实现.由此可见mootools更接近 js原型开发.

  我们看一下下边的代码:

复制代码
//Mootools的做法:
function Global_HidShow_Other(i){
    i=$(i);
if(i.checked){
   $sel=$('srh1').getElements('li.float input');

   Array.each($sel,function($sel_,index){
   $sel_.checked=false;
   $sel_.disabled=true;
   });
}
}

//Jquery的做法
$(document).ready(function(){
$sel=$('#srh1 li.float input');
$sel.checked=false;//我记得以前在写jquery的时候直接操作checked和disabled似乎是有问题的,时间很久了,记不太清了.
$sel.disabled=true;
});

复制代码

  其实这应该算是很基础的东西了,只不过应该归功于jquery惯坏了我的习惯罢了.

  Global_HidShow_Other这个函数我并没有绑定事件,而是直接写入到dom节点上了<span onclick="Global_HidShow_Other(this)">,这样就不需要每次打开页面的时候不管是否能用得到此功能都要绑定事件,资源能节省就节省吧.

  我在调用的时候传递了this进去,为了兼容IE,所以我在使用i参数之前先i=$(i);以免IE报错.

  这样的用法是不是和js原型开发非常相似.似乎一切都归于本源了.



posted @   已經停更  阅读(1649)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示