栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

javascript在动态创建的元素上进行事件绑定?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

javascript在动态创建的元素上进行事件绑定?

从jQuery 1.7开始, 您应该使用[

jQuery.fn.on
]:

$(staticAncestors).on(eventName, dynamicChild, function() {});

在此之前 ,推荐的方法是使用

live()

$(selector).live( eventName, function(){} );

但是,

live()
在1.7中弃用
on()
,而在1.9中完全删除了。该
live()
签名:

$(selector).live( eventName, function(){} );

…可以替换为以下

on()
签名:

$(document).on( eventName, selector, function(){} );

例如,如果您的页面正在使用类名动态创建元素,则

dosomething
可以将事件绑定到 已经存在的父级
(这是问题的小结,您需要绑定到现有的东西,而不要绑定到动态内容),则可以(也是最简单的选择)是
document
。尽管记住[
document
可能不是最有效的选择]。

$(document).on('mouseover mouseout', '.dosomething', function(){    // what you want to happen when mouseover and mouseout     // occurs on elements that match '.dosomething'});

绑定事件时存在的任何父项都可以。例如

$('.buttons').on('click', 'button', function(){    // do something here});

适用于

<div >    <!-- <button>s that are generated dynamically and added here --></div>


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/387888.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号