我有以下代码。单击该按钮时,将触发跨度覆盖上的单击处理程序,然后禁用该按钮。有效切换按钮状态。在Chrome和FireFox中,这是有效的,按钮被禁用,点击它不会触发跨度覆盖上的点击处理程序。但是,在IE中,该按钮被禁用,但您可以单击它,它将触发跨度覆盖上的点击处理程序。
有没有办法解决这个问题,同时保持类似的形式?我无法删除跨度覆盖上的处理程序,因为我找不到在需要时重新附加它的方法(覆盖/按钮是动态生成的),我需要覆盖额外的id参数。有什么想法吗?
<span id="id_1" style="display:inline-block">
<button id="id_2">Click Me</button>
</span>
答案 0 :(得分:0)
一个小问题,内联样式也正在生成?
也许您可以尝试使用z-index为1的样式和具有绝对位置的按钮设置样式,并为其指定z-index为10(或更多)。
答案 1 :(得分:0)
您可以在运行代码之前检查按钮的disabled属性:
$('#id_1')
.click(function(e)
{
if(e.target.disabled){return;}
/* code to execute when button is enabled*/
});