请问在jQuery()中,on()方法,求大神解释!

1.7以后,live()方法就被on()方法替代了,我用PHP+jQuery+Ajax做了一个用户登录界面,初始的时候没有

<p><a href='#' id='logout'>【退出】</a></p>这个按钮,是在点击登录以后出来的,现在想写一个$("#logout").on('click',function()这个方法,但是根据定义:
$('#Grid1Table').on('click', '#count', function() { 
//function code here. 
}); 
#Grid1Table是#count的父节点以上的节点 
问该怎么写,#logout有父节点嘛?求代码

慕哥6287543
浏览 382回答 3
3回答

不负相思意

概述1、#Grid1Table不是#conut的父节点,p标签是#logout的父节点2、代码写法:$('p').on('click', '#count', function() {//function code here.});解析1、p包裹a标签(id = logout),所以logout的父节点(父标签)为p(没有标注id或者class)<p><a href='#' id='logout'>【退出】</a></p>2、$("#logout").on('click',function()&nbsp;方法要求参数为非随动变量(全局变量),所以#logout为不可行参数,且由于代码没有贴全所以这里我先断定#Grid1Table为非父节点,而p为#logout父节点,所以这里可以改成:$('p').on('click', '#count', function() {//function code here.});拓展内容juqery on()方法详解定义和用法on() 方法在被选元素及子元素上添加一个或多个事件处理程序。自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。该方法给 API 带来很多便利,我们推荐使用该方法,它简化了 jQuery 代码库。注意:使用 on() 方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素)。提示:如需移除事件处理程序,请使用&nbsp;off()&nbsp;方法。提示:如需添加只运行一次的事件然后移除,请使用&nbsp;one()&nbsp;方法。语法$(selector).on(event,childSelector,data,function)参数event &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;必需。规定要从被选元素移除的一个或多个事件或命名空间。由空格分隔多个事件值,也可以是数组。必须是有效的事件。 &nbsp; &nbsp;childSelector &nbsp; &nbsp;可选。规定只能添加到指定的子元素上的事件处理程序(且不是选择器本身,比如已废弃的 delegate() 方法)。 &nbsp; &nbsp;data &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 可选。规定传递到函数的额外数据。 &nbsp; &nbsp;function &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;可选。规定当事件发生时运行的函数。 &nbsp; &nbsp;

慕侠2389804

$("#logout").on('click',function(){});也是可以的。不过有个限制,你的这个$("#logout"),不能是后期动态添加的节点。如果像表格里动态添加的行,要使用事件,就要用下面你说的方法。$('#Grid1Table').on('click', '#count', function() {//function code here.});#logout有父节点嘛?当然有。<p><a href='#' id='logout'>【退出】</a></p>p就是父节点。$('p').on('click', '#count', function() {//function code here.});

慕森卡

on的用法:.on( events [, selector ] [, data ], handler(eventObject) )描述: 在选定的元素上绑定一个或多个事件处理函数。events类型: String一个或多个空格分隔的事件类型和可选的命名空间,或仅仅是命名空间,比如"click", "keydown.myPlugin", 或者 ".myPlugin"。selector类型: String一个选择器字符串,用于过滤出被选中的元素中能触发事件的后代元素。如果选择器是 null 或者忽略了该选择器,那么被选中的元素总是能触发事件。data类型: Anything当一个事件被触发时,要传递给事件处理函数的event.data。handler(eventObject)类型: Function()事件被触发时,执行的函数。若该函数只是要执行return false的话,那么该参数位置可以直接简写成 false。.on()方法事件处理程序到当前选定的jQuery对象中的元素。在jQuery 1.7中,.on()方法 提供绑定事件处理的所有功能。要删除的.on()绑定的事件,使用.off()。要绑定一个事件,并且只运行一次,然后删除自己, 使用.one()
打开App,查看更多内容
随时随地看视频慕课网APP