16 javascript onclick javascript-events
我知道在元素上禁用onclick事件的方式是:
element.onclick = null;
Run Code Online (Sandbox Code Playgroud)
启用:
element.onclick = function(){
// something
};
Run Code Online (Sandbox Code Playgroud)
要么
element.addEventListener("click", me);
Run Code Online (Sandbox Code Playgroud)
这很好但是当你有几个元素 - 每个元素具有不同参数值的相同功能 - 使用这种方式会变得有点烦人.有没有办法可以在不牺牲初始函数及其参数的情况下禁用它?
我希望保持函数的方式,而不必将其设置为null或其他东西,以便禁用.
Don*_*ank 18
使用该disabled属性禁用按钮.
<button onclick="alert('clicked')">Enabled</button>
<button onclick="alert('clicked')" disabled>Disabled</button>
Run Code Online (Sandbox Code Playgroud)
这种方法的优点(在替代答案中建议的"指针事件")是它不仅会阻止你使用按钮作为鼠标用户,而且还会停止辅助技术和使用键盘的任何人.
在JavaScript中,您可以使用以下命令禁用或启用该属性:
el.disabled = true; // Disable.
el.disabled = false; // Enable.
Run Code Online (Sandbox Code Playgroud)
或者使用jQuery,您可以:
$('button').prop('disabled', true); // Disable.
$('button').prop('disabled', false); // Enable.
Run Code Online (Sandbox Code Playgroud)
你可以用css来做.
<button onclick="alert('clicked')">Can click</button>
<button onclick="alert('clicked')" style="pointer-events: none;">Cannot click</button>Run Code Online (Sandbox Code Playgroud)
Pro:它适用于所有HTML元素
Con:它不会阻止键盘操作
| 归档时间: |
|
| 查看次数: |
2589 次 |
| 最近记录: |