如何禁用或启用所有onClick页面上的图像 [英] how to disable or enable all onClick for images on a page
问题描述
我现在有这个禁用的代码,当用户点击图片时,我想要禁用所有其他图片上的onClicks,直到我的函数完成。他们:
var eles = document.getElementsByTagName('img');
for(var i = 0; i< eles.length; i ++)
eles [i] .onclick = false;
但我不确定如何重新启用它们。我已经尝试过:
var eles = document.getElementsByTagName('img');
for(var i = 0; i< eles.length; i ++)
eles [i] .onclick = true;
但它不起作用。任何人都有解决这个问题的解决方案。 解决方案
您的解决方案不起作用,因为您使用onClick = false删除了onClick。之后,您需要再次创建onClick事件处理程序。
这可能是您添加onclick事件的方式,我对其进行了更改,以便它能正常工作。 b
$ b
< img src =image1.jpgonclick =when_i_click();/>
< img src =image2.jpgonclick =when_i_click();/>
尝试像上面那样为onclick添加一个函数。
您的onclick功能:
var when_i_click =函数(){
alert('image clicked!');
这是您禁用onclicks(您的方法) strong>
var eles = document.getElementsByTagName('img');
for(var i = 0; i< eles.length; i ++)
eles [i] .onclick = null;
这是您重新启用它们的方式(重新附加onClick函数) strong>
var eles = document.getElementsByTagName('img');
for(var i = 0; i< eles.length; i ++)
eles [i] .onclick = when_i_click;
这是一个Jquery解决方案jquery: 尝试使用无阻碍的JavaScript,不要在DOM中添加onclick事件处理程序。 当你的函数完成时,只需设置 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: but I'm not sure how to re enable them. I have tried: But its not working. anyone have solution for this problem Your solution doesn't work because you removed your onClick with onClick = false. After that you need to create the onClick event handler again. This is probably your way of adding onclick events, I changed it so it should work. Try adding a function to your onclick as above. Your onclick function: This is how you disable your onclicks (your method) This is how you re-enable them (re-attach function to onClick ) This is a Jquery solution jquery: Try using unobstructive javascript, by not adding onclick event handlers in the DOM.
When your function is finished just set 这篇关于如何禁用或启用所有onClick页面上的图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
< script> $()函数(){
var function_is_finished = false;
$('img')。on('click',function(event){
if(function_is_finished){
//当有人点击Img
}
});
})();
< / script>
function_is_finished
至 true
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = false;
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = true;
<img src="image1.jpg" onclick="when_i_click();"/>
<img src="image2.jpg" onclick="when_i_click();"/>
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;
var eles = document.getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
eles[i].onclick = when_i_click;
<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
to true