当前位置: 首页 > news >正文

中国优秀网站建设官网百度搜索结果

中国优秀网站建设官网,百度搜索结果,效果图工作室,长沙市制作企业网站公司jQuery如何获取动态添加的元素 使用 on()方法 本质上使用了事件委派,将事件委派在父元素身上 自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品,但是由于on()方法必须有事件,没有事件时可选择de…

jQuery如何获取动态添加的元素

  1. 使用 on()方法

    本质上使用了事件委派,将事件委派在父元素身上

    自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品,但是由于on()方法必须有事件,没有事件时可选择delegate();

下例为选项卡:
父元素: .main .left
子元素: li

$("父元素").on("click","子元素",function(){var index=$(this).index();$(".main .right").find('li').css({"background":"#F4F4F4","color":"#333"});$(this).css({"background":"#fff","color":"#46c6ff"});$(".main .left").find('li').hide();$(".main .left").find('li').eq(index).show();
});
  1. on()可以获取动态元素,必须有事件

    delegate() 可以获取动态元素,可以没事件

    live() 可以获取动态元素,jQuery 1.9已弃用,必须有事件

    bind() 只能获取静态元素,不能获取动态元素,必须有事件

一、问题描述

用jQuery的append()方法动态添加了一段html代码之后,发现在为新添加的元素绑定click事件时无法获取该新元素。

二、解决方法

度娘推荐的方法基本是用live()方法

live() 方法为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。通过 live() 方法附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素)。

live()的详细使用方法可以查看jQuery live()

live()和bind()的区别就是live不仅可以给页面中现有的元素绑定事件,还可以给将来动态添加进来的元素绑定事件。

于是我用live()替换了bind(),但报出了新错误:TypeError: $(…).live is not a function

经过查询以后发现,原来是jQuery 1.9及其以上已经无法使用live(),可以用on()方法代替live().

on()的官方定义和用法:

on() 方法在被选元素及子元素上添加一个或多个事件处理程序。自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。

注意:使用 on() 方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素)。

在这里插入图片描述

on()的详细使用方法可以查看jQuery on()

三、代码演示
html页面:


<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>jQuery on()方法测试</title>
</head>
<body>
<button id="click1">Click me!</button>
<p>Hello,</p>
<script src="js/jquery.min.js"></script>
<script src="js/test.js"></script>
</body>
</html>

test.js:


$().ready(function(){$("#click1").bind("click",function(){$("p").append("<div class='new'><b>I'm clicked!</b></div>");});//on方法要先找到原选择器(p),再找到动态添加的选择器(.new)$("p").on("click",".new",function(){$(this).remove();});
});

test.js中第6行实现了为动态添加的.new元素绑定click事件。应注意的是,虽然是为.new绑定事件,但on()方法却是绑定在原选择器

上的,然后将.new放在了参数列表中,原理参照上文on()的官方定义和用法。

http://www.yayakq.cn/news/339789/

相关文章:

  • 内销网站怎么做网站关键词优化价格
  • 做展示空间设计的网站指数运算公式大全
  • 伊川县住房和城乡建设厅网站路由器可以做网站服务器吗
  • 手机网站备案密码找回的方法保险平台官网
  • swiper wordpress南京seo网站建设费用
  • 网站需要公司备案么兰州网络推广做啥的
  • 如何做网站的的关键词怎么用wordpress建电商网站吗
  • 网站目录怎么做301跳转电商网站建设市场
  • 有没有做古装衣服的网站广元市剑阁县建设局网站
  • 网站开发href使用本地链接logo模板素材
  • 平面设计师上的网站专业模板网站制作
  • 网站开发资金来源怎样制作自己网站
  • 浙江省工程建设协会网站大众创新网官方网站首页
  • 网站建设简述广东省建设安全管理协会网站
  • 企业做推广哪些网站比较好笔趣阁 网站开发
  • 免费图标下载网站平面设计职业规划
  • 小企业网站建设哪找jsp 淘宝网站验证码 设计
  • 淘宝上的网站怎么做网络制作网站
  • 张家港建设工程质量监督站网站免费开个人网店
  • 小学学校网站建设情况资料网页设计师是前端吗
  • 做粘土网站自己怎么制作网页游戏
  • php 用什么做网站服务器吗网站模板 金融
  • 网站建设 面试问题苏州微信网站
  • dedecms微电影网站模板艺术字体
  • 苏州企业网站seo网站买源代码
  • 佛山网站建设专家青岛有没有做网站的
  • 都匀住房和城乡建设厅网站网站建站前seo注意
  • 唐山网站定制建设工程查询网站
  • 网站的代码在哪里设置十大永久免费网络游戏
  • 行业门户网站程序工业控制软件开发