zoukankan      html  css  js  c++  java
  • jquery live()函数原理及实现

    实现原理:
    其实就是将事件绑定到父节点,由于事件冒泡,所有事件最终会冒泡到document节点
    当有事件触发时,则判断事件类型和触发事件的元素是否一致,如果相同则执行函数

    <!doctype html>
    <html>
        <head>
            <title>jquery live()函数原理及实现</title>
            <style type="text/css">
                table{
                    border-collapse:collapse;
                    border-spacing:0;
                }
                td{
                    border:1px solid #cdcdcd;
                }
            </style>
            <script type="text/javascript">
                function live(target, type, fn){    //元素类型,事件类型,执行函数
                    document.onclick = function(event){
                        var e = event ? event : window.event;
                        addRow();
                        if(e.type == type && e.target.tagName.toLocaleLowerCase() == target){
                            fn();    //如果元素类型和事件类型同时匹配,则执行函数
                        }
                    }
                }
                function addRow(){
                    var x=document.getElementById("tb").insertRow(0);
                    var y=x.insertCell(0);
                    var z=x.insertCell(1);
                    y.innerHTML="NEW CELL1";
                    z.innerHTML="NEW CELL2";
                }
                
                //实例:将所有的td(包括后续js添加的)绑定click事件
                live("td", "click", function(){
                    alert("live");
                });
            </script>
        </head>
        <body>
            <table id="tb">
                <tr>
                    <td>..........................................</td>
                    <td>..........................................</td>
                </tr>
                <tr>
                    <td>..........................................</td>
                    <td>..........................................</td>
                </tr>
                <tr>
                    <td>..........................................</td>
                    <td>..........................................</td>
                </tr>
            </table>
        </body>
    </html>
  • 相关阅读:
    ADO.NET 数据连接查询
    弹出消息对话框类
    C# 火星文转化 算法 dictionary 的使用案例
    微软官方的SqlHelper
    jsHelper
    【VC++积累】之六、MFC简要剖析
    C# 统计文章中字符的种类和个数 哈希表和字典的使用
    C# NetHelper
    C# XML操作类 XmlHelper
    【VS++积累】之七、黑客编程之匿名管道
  • 原文地址:https://www.cnblogs.com/load/p/2837720.html
Copyright © 2011-2022 走看看