有人可以向我解释为什么在使用 stopPropagation 方法时出现此错误消息?我有一个简单的事件,如果你点击ID ex1 的 div ,会运行一个函数,这将导致div的背景颜色为深粉红色。然后我添加了stopPropagation方法来停止该功能。但是,我在控制台中收到一条错误消息,表示它不起作用,但是,stopPropagation方法仍然有效。
HTML
<div id="ex1"><h2>Example 1</h2><p></p><h4>results:</h4></div>
的Javascript
document.getElementById('ex1').addEventListener('click', function(e){
this.stopPropagation();
this.style.backgroundColor = 'deeppink';
},false);
答案 0 :(得分:3)
不要使用this
,this
指的是点击的元素。使用e
,这是事件对象。
document.getElementById('ex1').addEventListener('click', function(e){
e.stopPropagation();
this.style.backgroundColor = 'deeppink';
},false);
&#13;
<div id="ex1"><h2>Example 1</h2><p></p><h4>results:</h4></div>
&#13;