很久没写了,本来只是学到一点小东西,觉得没必要写的,但是感觉如果一直不写的话,自己的写作能力和热情是不是也会越来越弱,所以先随便拿点东西热热手,热热心。
在写js脚本时,非常习惯使用jquery中的live事件,因为相比bind事件来说具有动态加载的功效,使得控制页面元素变成非常简单。
一个是可以绑定多个事件处理,其次是可以绑定将在未来定义的元素。这里就不想再说种种优点和缺点了,也不比较和bind、delegate的区别了,网上也一大堆,就写点自己想的东西。
在自己前端项目中,很多事件处理都用了live,但偶然发现绑定的元素绝大部分都是单事件处理,今天突发奇想用live来处理下多事件,也让页面的体验表现更好。
随便举个例子,之前给一个页面元素绑定离开事件时,直接写成:$("selector").blur(function(){...}),简单粗暴。使用live后:$("selector").live("blur", function(){...}),感觉略带文艺范。多事件:$("selector").live("blur click", function(){...}),如此简单。
不过研究后发现,这种多事件的写法也有不足的地方,因为blur和click事件执行的都是同一段代码,如果想要不同事件执行不同方法就不好办了,还得在底层脚本里写各种判断,麻烦,也容易出错。
换了几种写法后,发现了另一个高效写法,直接解决上面的问题。$("selector").live("blur", function(){...}).live("click",function(){...})
原来还可以串着用,跟火车车厢似的,有点意思,个人还是非常喜欢这种方式,不必拘束在底层脚本里作各种判断,性能也没任何影响,脚本样式也感觉更大气。
就到这了,可能对行家来说简直弱爆的东西,不过自己觉得有意思就行。
在写js脚本时,非常习惯使用jquery中的live事件,因为相比bind事件来说具有动态加载的功效,使得控制页面元素变成非常简单。
一个是可以绑定多个事件处理,其次是可以绑定将在未来定义的元素。这里就不想再说种种优点和缺点了,也不比较和bind、delegate的区别了,网上也一大堆,就写点自己想的东西。
在自己前端项目中,很多事件处理都用了live,但偶然发现绑定的元素绝大部分都是单事件处理,今天突发奇想用live来处理下多事件,也让页面的体验表现更好。
随便举个例子,之前给一个页面元素绑定离开事件时,直接写成:$("selector").blur(function(){...}),简单粗暴。使用live后:$("selector").live("blur", function(){...}),感觉略带文艺范。多事件:$("selector").live("blur click", function(){...}),如此简单。
不过研究后发现,这种多事件的写法也有不足的地方,因为blur和click事件执行的都是同一段代码,如果想要不同事件执行不同方法就不好办了,还得在底层脚本里写各种判断,麻烦,也容易出错。
换了几种写法后,发现了另一个高效写法,直接解决上面的问题。$("selector").live("blur", function(){...}).live("click",function(){...})
原来还可以串着用,跟火车车厢似的,有点意思,个人还是非常喜欢这种方式,不必拘束在底层脚本里作各种判断,性能也没任何影响,脚本样式也感觉更大气。
就到这了,可能对行家来说简直弱爆的东西,不过自己觉得有意思就行。