javascript - 为什么这么简单的函数都报错?
阿神
阿神 2017-04-11 11:25:17
[JavaScript讨论组]

`

var tooldetailsFunc = function(e){
    // function tooldetailsFunc(e){
    var el = e.target;
    alert(1);
}
var tooldetails = document.getElementByClassName("details");
// var tooldetails = document.querySelector(".details");
// tooldetails.addEventListener("click", tooldetailsFunc);
// tooldetails.addEventListener("click",tooldetailsFunc);
tooldetails.addEventlistener("click",tooldetailsFunc);
// 这一句无故报错

`

curencys.js:40 Uncaught TypeError: tooldetails.addEventlistener is not a function

啊,受不了了,为什么 这么简单的函数都报错?
我只是想给 相同的类名添加 点击事件!

var tooldetailsFunc = function(e){
    // function tooldetailsFunc(e){
    var el = e.target;
    alert(1);
}
var tooldetails = document.getElementByClassName("details");
// var tooldetails = document.querySelector(".details");
// tooldetails.addEventListener("click", tooldetailsFunc);
// tooldetails.addEventListener("click",tooldetailsFunc);
tooldetails.addEventlistener("click",tooldetailsFunc);
Uncaught TypeError: document.getElementByClassName is not a function


感谢各位的无私帮助,我会认真的实习基础的,


已经成功,我一点击,就2 嘿嘿

阿神
阿神

闭关修行中......

全部回复(9)
阿神

别着急兄弟。首先getElementsByClassName返回的是一个元素数组,不能直接绑定事件的。你得取出数组的元素先
比如

for(var i = 0; i < tooldetails.length; i++){
    tooldetails[i].addEventlistener("click",tooldetailsFunc);
}

还是掌握基础先。比如api中传入哪些参数,返回哪些数据。

对了,还有楼下朋友提到的拼写错误。

ringa_lee

兄弟,两个问题,先说第一个:

curencys.js:40 Uncaught TypeError: tooldetails.addEventlistener is not
a function

这里表示你 tooldetails这个变量没有addEventlistener方法,检查下,发现拼写错误。addEventListener

再说第二个:

Uncaught TypeError: document.getElementByClassName is not a function

这里表示document没有getElementByClassName这个function, 仔细点,真正的方法名是getElementsByClassName。 你少了一个s。

还有就是这个getElementsByClassName拿出来是一个数组。

PHP中文网

通过className找元素可以找到多个,复数elements,getElementsByClassName。

既然是多个的话,绑定事件要循环绑定

PHP中文网

addEventListener 大写
getElementsByClassName s
建议回去看看基础

PHP中文网

两处拼写错误,要细心啊同学。

 addEventListener  L大写//驼峰命名法
getElementsByClassName  记得加s//理解函数名,className非单一性,所以是复数
黄舟

首先你获取不到元素,你拼写错误,getElementsByClassName
其次,这个获得的是一个伪数据,并不是真正的数组元素,但是可以用循环
再次,绑定事件是得循环添加

天蓬老师

拼写错啊,建议楼主用好一点的编辑器,不要用那些没提示的。反而降低效率

巴扎黑

另外,你可以直接在浏览器下单步调试,看变量是什么类型,都包括哪些方法和参数。这也是个不错的学习途径

PHP中文网

报错不是很明显了吗。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号