我在用代理的时候显示 Cannot read property 'call' of null at HTMLDivElement.<anonymous>

来源:19-2 事件-代码演示

阿尔卑斯de秘密

2017-09-02

<script>
	function bindEvent(elem,type,selector,fn){
		if(fn=null){
			fn=selector;
			selector=null;
			}
		elem.addEventListener(type,function(e){
			var target
			if(selector){
				target=e.target;
				if(target.matches(selector)){
					fn.call(target,e)
					}
			}else{
				fn(e)
				}
		})
	}
	var div1=document.getElementById('div1')
	bindEvent(div1,'click','a',function(e){
		console.log('1')
		})
</script>

求解

<div id="div1" class="div1">
        <a id="p1" class="p1">asdf</a>
        <a id="p2" class="p2">fghj</a>
        <a id="p3" class="p3">fghj</a>
        <a id="p4" class="p4">fghj</a>
    </div>
    <div id="div2" class="div2">
    	<p id="p5" class="p5">1234</p>
    	<p id="p6" class="p6">5678</p>
    </div>


写回答

2回答

小王子抓猫咪

2017-11-04

=,==,===弄明白好吗

1
0

阿尔卑斯de秘密

提问者

2017-09-02

。。。。。

抱歉,老师,我发现错误了

0
0

BAT大牛带你横扫初级前端JavaScript面试(第二版)

BAT高级前端工程师亲授,结合真实面试题,提高面试成功几率

4268 学习 · 817 问题

查看课程