js 前绑定、后绑定功能实例

前端之家收集整理的这篇文章主要介绍了js 前绑定、后绑定功能实例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
其主要意思就是看我有没有用过前绑定,即Dom树中的某些元素在还没有创建出来时,就指定该类型的元素一出生就应该拥有的某些事件。在实际开发过程中经常会涉及到前绑定和后绑定。顾名思义,前绑定——还未出生即绑定了某些事件,后绑定——出生后才会绑定的某些事件。

下面,通过一个简单的例子进行阐述,以供大家参考,并对各个方法进行比较:
页面元素: 经测试代码如下:
  1. <!-- 来自 编程之家 jb51.cc (jb51.cc)-->
  2. <div id="main">
  3. <a href="#">aaaaaaaaaaaaaaaaaaaaaa</a><br />
  4. <a href="#">bbbbbbbbbbbbbbbbbbbb</a><br />
  5. <a href="#">ccccccccccccccccccccccccc</a><br />
  6. <a href="#">dddddddddddddddddddd</a><br />
  7. <a href="#">eeeeeeeeeeeeeeeeeeeeee</a><br />
  8. <a href="#">fffffffffffffffffffffffffffffffff</a><br />
  9. <a href="#">gggggggggggggggggggg</a><br />
  10. <a href="#">hhhhhhhhhhhhhhhhhhhh</a>
  11. </div>
  12. <input type="button" value="创建a标签" id="btnCreate" />
  13. <!-- 来自 编程之家 jb51.cc (jb51.cc)-->

页面中的js:
  1. /**
  2. * 前绑定、后绑定
  3. *
  4. * @param
  5. * @arrange (512.笔记) jb51.cc
  6. **/
  7. <script src="/js/Scripts/jquery-1.5.js" type="text/javascript"></script>
  8. <script type="text/javascript">
  9. $(function () {
  10. //后绑定,即动态创建的元素不能拥有绑定的事件!!!
  11. //1.后绑定
  12. // $("#main > a ").click(function () {
  13. // alert($(this).html());
  14. // });
  15. //2.后绑定
  16. // $("#main > a").bind("click",function () {
  17. // alert($(this).text());
  18. // });
  19. //3.后绑定,// $("#main > a").bind({
  20. // click: function () { alert($(this).text()); },// mouSEOver: function () { $(this).css("background-color","red") },// mouSEOut: function () { $(this).css("background-color","white") }
  21. // });
  22. $("#btnCreate").bind({
  23. click: function () { $("<br /><a href='#'>我是动态创建的</a>").appendTo("#main"); }
  24. });
  25. //4.前绑定,动态创建的元素也拥有了点击的事件
  26. // $("#main").delegate("a","click",function () {
  27. // alert($(this).text());
  28. // });
  29. //5.前绑定,live的事件源头的是documentdelegate的源头是具体要绑定的元素,所以delegate的效率比live高多了
  30. $("#main a").live("click",function () {
  31. alert($(this).text());
  32. });
  33. });
  34. </script>

 

猜你在找的JavaScript相关文章