日期:2014-05-16  浏览次数:20313 次

JavaScript里面的事件委托是什么情况,求解答啊,,,
JavaScript里面的事件委托是什么情况,说什么冒泡原理,
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
意思是在上面的ul标签上面加上方法,然后下属的子节点都会有ul里面的方法么?????

------解决方案--------------------
事件委托 主要 可以提高程序性能 、新增加的元素也具有事件
比如
需要给页面中的div赋于onclick事件,页面初始的div倒是可以成功加载上,那之后动态添加的dom却没有onclick事件,需要对生成的div再次定义onclick,这样就显得很麻烦,
事件委托就可以解决这个问题,比如
HTML code

<!DOCTYPE HTML>
<html>
    <head>
        <meta charset="gb2312" />
        <title></title>
        <style>
        
        </style>
    </head>
    <body>
        <button id="btn">add</button>
        <div>123</div>
        <div>111111</div>
        <script>
            var $ = function(id){
                return document.getElementById(id);
            };
            $('btn').onclick = function(){
                var div = document.createElement('div');
                div.innerHTML = Math.random();
                document.body.appendChild(div);
            }
            
            document.onclick = function(e){
                e = window.event || e;
                var t = e.target || e.srcElement;
                var name = t.tagName.toLowerCase();
                if( name == 'div' ){
                    alert( t.innerHTML );
                }
            }
            
        </script>
    </body>
</html>