我有两个onclick事件的问题,它们有些类似,所以我会在这里一起问。
第一个问题:
我在div中有一个复选框。输入框具有一个onchange函数,而div具有一个onclick函数。
<div onclick="doSomething()">
<input type="checkbox" onchange="doSomethingElse()" />
</div>
当我勾选/取消复选框时,同时触发了doSomething()和doSomethingElse()。有什么想法可以防止这种情况发生吗?我尝试了在onchange="doSomethingElse(event)"中使用,并且在doSomethingElse(e)函数中加入e.stopPropagation();但这并没有起作用。
其次:
我有一个包含图片的div。该div具有onclick函数,但是图片没有。图片故意比div更大,超出了div的范围。
-----------------------
| image |
| --------------- |
| | div | |
| | | |
| --------------- |
| |
-----------------------
我只希望当用户点击
框范围内的区域时才触发onclick事件。但是,如果你点击了溢出到
外部的图像的一部分,onclick事件也会触发... 有什么想法吗?
对我来说,第一个问题比第二个问题更重要。但如果有人能回答两个问题,那就太棒了!
非常感谢您的帮助,
Matt