Jrm*_*rmi 19 javascript firefox onclick button dom-events
当我在按钮元素内绑定span元素的click事件时,我遇到了Firefox 32的问题.其他浏览器似乎运行良好.
<span onClick="alert('test');">**Working**</span><br>
<button>inside a button <span onClick="alert('test');">**Not working**</span></button>
Run Code Online (Sandbox Code Playgroud)
有人知道为什么,如果它是一个错误或功能?
SDK*_*SDK 25
据我所知,单击子元素将无法工作,因为它嵌套在按钮内.按钮不是子元素的容器 - 仅用于文本.
如果您尝试如下,它总是告诉您单击按钮.
<button type="button" onclick="alert('You clicked the button!');">
inside a button <span onClick="alert('clicked span');">**Not working**</span>
</button>
Run Code Online (Sandbox Code Playgroud)
所以,我的建议是使用另一个span或div
<div class="button_replace">
inside a div <span onClick="alert('clicked span');">**working**</span>
</div>
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你...
注意:您的代码将在chrome中运行,但不适用于firefox,我的答案是在Firefox中工作的替代解决方案
小智 14
您必须将pointer-events
属性添加到span元素.
button span {
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
小智 5
在 css 中为您的按钮添加一个指针事件,例如:
button span {
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
单击按钮元素将被忽略