how to disable or enable all onClick for images on a page(如何为页面上的图像禁用或启用所有 onClick)
问题描述
当用户点击一张图片时,我希望在我的功能完成之前禁用所有其他图片上的 onClicks.
When the user clicks on an image, I want the onClicks on all other images to be disabled until my function has finished.
我目前有这段代码可以禁用它们:
I currently have this code that disables them:
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = false;
但我不确定如何重新启用它们.我试过了:
but I'm not sure how to re enable them. I have tried:
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = true;
但它不起作用.任何人都可以解决这个问题
But its not working. anyone have solution for this problem
推荐答案
您的解决方案不起作用,因为您使用 onClick = false 删除了 onClick.之后,您需要再次创建 onClick 事件处理程序.
Your solution doesn't work because you removed your onClick with onClick = false. After that you need to create the onClick event handler again.
这可能是您添加 onclick 事件的方式,我对其进行了更改,因此它应该可以工作.
This is probably your way of adding onclick events, I changed it so it should work.
<img src="image1.jpg" onclick="when_i_click();"/>
<img src="image2.jpg" onclick="when_i_click();"/>
尝试向您的 onclick 添加一个函数,如上所示.
您的点击功能:
var when_i_click = function(){
alert('image clicked!');
}
这是您禁用点击的方式(您的方法)
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = null;
这就是您重新启用它们的方式(将功能重新附加到 onClick )
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = when_i_click;
这是一个jquery解决方案jquery:
尝试使用通畅的 javascript,不要在 DOM 中添加 onclick 事件处理程序.
Try using unobstructive javascript, by not adding onclick event handlers in the DOM.
<script>
(function(){
var function_is_finished = false;
$('img').on('click',function(event){
if(function_is_finished) {
//Do your stuff when someone clicks on Img
}
});
})();
</script>
当你的函数完成后,只需将 function_is_finished
设置为 true
When your function is finished just set function_is_finished
to true
这篇关于如何为页面上的图像禁用或启用所有 onClick的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何为页面上的图像禁用或启用所有 onClick


基础教程推荐
- Chart.js 在线性图表上拖动点 2022-01-01
- html表格如何通过更改悬停边框来突出显示列? 2022-01-01
- 直接将值设置为滑块 2022-01-01
- Vue 3 – <过渡>渲染不能动画的非元素根节点 2022-01-01
- 如何使用JIT在顺风css中使用布局变体? 2022-01-01
- 我可以在浏览器中与Babel一起使用ES模块,而不捆绑我的代码吗? 2022-01-01
- 自定义 XMLHttpRequest.prototype.open 2022-01-01
- 如何使用TypeScrip将固定承诺数组中的项设置为可选 2022-01-01
- Electron 将 Node.js 和 Chromium 上下文结合起来意味着 2022-01-01
- 用于 Twitter 小部件宽度的 HTML/CSS 2022-01-01