为啥可以有if(ele.addEventListener)这样的写法

为啥可以有if(ele.addEventListener)这样的写法

addEventListener这个函数不是需要参数才可以进行的吗,为啥ele.addEventListener不报错,而是返回布尔?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

你好同学,这里并不是要调用它,而是判断元素是否通过addEventListener监听了事件。这个是获取属性的固定语法elem.xx就是获取elem元素的xx属性,box.addEventListener就是为元素绑定了一个属性,这个属性是用来监听事件的。(获取属性会在后面js深入的课程中涉及到)。老师给你举一个小例子简单去理解一下:

http://img1.sycdn.imooc.com//climg/5ce8e8290001415e08590318.jpg

祝学习愉快 ,望采纳。

  • cjq6502 提问者 #1
    是不是可以理解成,为box定义addEventListener方法的时候,就会为box添加一个名称为addEventListener的属性? 还是说addEventListener是元素的固有属性?
    2019-05-25 16:35:30
好帮手慕夭夭 2019-05-25 18:55:49

你好同学,可以理解为addEventListener是元素的上固有的属性,每一个dom元素都会有。所以获取它返回的就是true。而ie中解析元素是没有addEventListener这个属性的,所以在ie中获取会返回false哦。

祝学习愉快 ,望采纳。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师