Javascript 问题—高人请进,初学者免

来源:百度知道 编辑:UC知道 时间:2024/05/25 00:22:28
document.onclick = function 这句话绑定成功
button1.onclick = function 这句话绑定失败

补充 buttion1 是 <button> 的id属性

为什么第二句话绑定不了呢?`
而document.body.onclick = aa (aa是函数) 都可以绑定事件`

求高人解答。。
答复倒数1楼: button1 绝对只有一个
重申我不是菜鸟。。

答复倒数2楼: 绑定似乎和基类`非基类无关
重写我虽然还没试,我试完再答复你

答复倒数3楼:你说的getElementById行不通`试过了

重申,请你们回答前也试试好吗?`这样以后都学到这种用法
对于大量的<input><button><img>可以用循环绑定

这样不是更好吗?`也可以通过判断后,更改原来的事件绑定`
用处多多,请大家都试一试再答复,期待。。

你看看你的html里是不是有form,而且form里有name=button1的节点?
你把整段js和html发出来吧,否则很难知道是什么问题
我试了下面的这一段是没有问题的
<html>
<body>
<button id="button1">
</body>
</html>
<script>
document.body.onclick = aa;
button1.onclick = aa;
function aa(){
alert('a');
}
</script>

函数分为两类函数
一个是基类函数,一个是自定义函数。。
你把aa函数改为基类函数,或者直接继承看看

<html>
<body>
<button id="button1">测试</button>
<body>
</body>
</html>
<script>
function aa(){
alert("clicked!");
};
button1.onclick = aa;
</script>

代码在IE7、Opera中可以,在FF中不行。

将button1.onclick = aa;改为document.getElementById("button1").onclick = aa;,则在三种浏览器中均能成功。

我觉得要不就是真的有重复,要不就是你的浏览器不支持button标签……

实际上这跟你是不是菜鸟没有关系,每个人都有犯错误的时候,建议仔细检查代码……