js中的前绑定和后绑定详解


Posted in Javascript onAugust 01, 2013

 其主要意思就是看我有没有用过前绑定,即Dom树中的某些元素在还没有创建出来时,就指定该类型的元素一出生就应该拥有的某些事件。在实际开发过程中经常会涉及到前绑定和后绑定。顾名思义,前绑定——还未出生即绑定了某些事件,后绑定——出生后才会绑定的某些事件。
下面,通过一个简单的例子进行阐述,以供大家参考,并对各个方法进行比较:
页面元素:

<div id="main"> 
<a href="#">aaaaaaaaaaaaaaaaaaaaaa</a><br /> 
<a href="#">bbbbbbbbbbbbbbbbbbbb</a><br /> 
<a href="#">ccccccccccccccccccccccccc</a><br /> 
<a href="#">dddddddddddddddddddd</a><br /> 
<a href="#">eeeeeeeeeeeeeeeeeeeeee</a><br /> 
<a href="#">fffffffffffffffffffffffffffffffff</a><br /> 
<a href="#">gggggggggggggggggggg</a><br /> 
<a href="#">hhhhhhhhhhhhhhhhhhhh</a> 
</div> 
<input type="button" value="创建a标签" id="btnCreate" />

页面中的js:
<script src="201102/Scripts/jquery-1.5.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function () { 
//后绑定,即动态创建的元素不能拥有绑定的事件!!! 
//1.后绑定 
// $("#main > a ").click(function () { 
// alert($(this).html()); 
// }); 
//2.后绑定 
// $("#main > a").bind("click", function () { 
// alert($(this).text()); 
// }); 
//3.后绑定, 
// $("#main > a").bind({ 
// click: function () { alert($(this).text()); }, 
// mouseover: function () { $(this).css("background-color", "red") }, 
// mouseout: function () { $(this).css("background-color", "white") } 
// }); 
$("#btnCreate").bind({ 
click: function () { $("<br /><a href='#'>我是动态创建的</a>").appendTo("#main"); } 
}); 

//4.前绑定,动态创建的元素也拥有了点击的事件 
// $("#main").delegate("a", "click", function () { 
// alert($(this).text()); 
// }); 
//5.前绑定,live的事件源头的是documentdelegate的源头是具体要绑定的元素,所以delegate的效率比live高多了 
$("#main a").live("click", function () { 
alert($(this).text()); 
}); 
}); 
</script>
Javascript 相关文章推荐
JQuery页面图片切换和新闻列表滚动效果的具体实现
Sep 26 Javascript
12种不宜使用的Javascript语法整理
Nov 04 Javascript
js Date概念详细介绍
Nov 22 Javascript
多种JQuery循环滚动文字图片效果代码
Jun 23 Javascript
jquery使用on绑定a标签无效 只能用live解决
Jun 02 Javascript
angular2倒计时组件使用详解
Jan 12 Javascript
vue.js树形组件之删除双击增加分支实例代码
Feb 28 Javascript
关于Bootstrap按钮组件消除黄框的方法
May 19 Javascript
Three.js利用dat.GUI如何简化试验流程详解
Sep 26 Javascript
node 使用 async 控制并发的方法
May 07 Javascript
解决微信小程序防止无法回到主页的问题
Sep 28 Javascript
详解JavaScript中的this指向问题
Feb 05 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
Aug 01 #Javascript
jquery实现带复选框的表格行选中删除时高亮显示
Aug 01 #Javascript
JQuery的自定义事件代码,触发,绑定简单实例
Aug 01 #Javascript
jquery实现带单选按钮的表格行选中时高亮显示
Aug 01 #Javascript
JavaScript定时器详解及实例
Aug 01 #Javascript
js渐变显示渐变消失示例代码
Aug 01 #Javascript
jQuery点击弹出下拉菜单的小例子
Aug 01 #Javascript
You might like
模仿OSO的论坛(五)
2006/10/09 PHP
php生成图形(Libchart)实例
2013/11/06 PHP
php插入mysql数据返回id的方法
2018/05/31 PHP
iis6+javascript Add an Extension File
2007/06/13 Javascript
js onpropertychange输入框 事件获取属性
2009/03/26 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
Angularjs使用指令做表单校验的方法
2017/03/31 Javascript
微信小程序 实现列表项滑动显示删除按钮的功能
2017/04/13 Javascript
JS实现简单抖动效果
2017/06/01 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
2017/07/13 Javascript
小试小程序云开发(小结)
2019/06/06 Javascript
JS基础之逻辑结构与循环操作示例
2020/01/19 Javascript
[01:01:24]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第三局
2016/02/25 DOTA
[02:11]DOTA2上海特级锦标赛主赛事第二日RECAP
2016/03/04 DOTA
[02:38]DOTA2 夜魇暗潮2020活动介绍官方视频
2020/11/04 DOTA
Python中isnumeric()方法的使用简介
2015/05/19 Python
利用python代码写的12306订票代码
2015/12/20 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
python 统计数组中元素出现次数并进行排序的实例
2018/07/02 Python
Python Tkinter 简单登录界面的实现
2019/06/14 Python
python requests使用socks5的例子
2019/07/25 Python
pandas实现excel中的数据透视表和Vlookup函数功能代码
2020/02/14 Python
Python并发concurrent.futures和asyncio实例
2020/05/04 Python
Python3自定义json逐层解析器代码
2020/05/11 Python
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
Pretty Little Thing爱尔兰:时尚女性服饰
2017/03/27 全球购物
MADE荷兰:提供原创设计师家具
2018/04/03 全球购物
俄罗斯名牌服装网上商店:UNIQUE FABRIC
2019/07/25 全球购物
美国亚马逊旗下时尚女装网店:SHOPBOP(支持中文)
2020/10/17 全球购物
新员工欢迎词
2014/01/12 职场文书
《孔子游春》教学反思
2014/02/25 职场文书
事业单位竞聘上岗实施方案
2014/03/28 职场文书
公司证明怎么写
2014/09/22 职场文书
群众路线四风自我剖析材料
2014/10/08 职场文书
财务整改报告范文
2014/11/05 职场文书
Win10 Anaconda安装python-pcl
2022/04/29 Servers