JQuery

2016-12-27  本文已影响0人  Maggie_77

3. jquery 对象和 DOM 原生对象有什么区别?如何转化?

4. jquery中如何绑定事件?bind、unbind、delegate、live、on、off都有什么作用?推荐使用哪种?使用on绑定事件使用事件代理的写法?

绑定事件方法:bind live delegate on

$('a').bind('click', function() { 
    alert("That tickles!") 
});

这是最简单的绑定方法了。JQuery扫描文档找出所有的$(‘a’)元素,并把alert函数绑定到每个元素的click事件上。

$('a').live('click', function() { 
    alert("That tickles!") 
});

JQuery把alert函数绑定到$(document)元素上,并使用’click’和’a’作为参数。任何时候只要有事件冒泡到document节点上,它就查看该事件是否是一个click事件,以及该事件的目标元素与’a’这一CSS选择器是否匹配,如果都是的话,则执行函数。

$('#container').delegate('a', 'click', function() { 
    alert("That tickles!") 
});

JQuery扫描文档查找$(‘#container’),并使用click事件和’a’这一CSS选择器作为参数把alert函数绑定到$(‘#container’)上。任何时候只要有事件冒泡到$(‘#container’)上,它就查看该事件是否是click事件,以及该事件的目标元素是否与CCS选择器相匹配。如果两种检查的结果都为真的话,它就执行函数。

// Bind
$( "#members li a" ).on( "click", function( e ) {} ); 
$( "#members li a" ).bind( "click", function( e ) {} ); 


// Delegate
$( "#members" ).on( "click", "li a", function( e ) {} );   //注意子元素参数位置
$( "#members" ).delegate( "li a", "click", function( e ) {} );
$( "#members" ).on( "click", "li a", function( e ) {} );   
上一篇 下一篇

猜你喜欢

热点阅读