单击一个元素后,我想在该元素上禁用click()
,直到用户执行其他任务为止。我已经看过人们说要将残障属性添加到元素中的帖子,但这对我来说似乎不起作用。
我已经看过其他帖子,他们建议取消绑定click()
,但是在重新绑定click()
时必须复制代码。有关最佳方法的任何建议吗?谢谢
$("#someElement").click(function(){
//Disable click on #someElement, do some stuff, and show another element
$('#anotherElement').show();
});
$('#anotherElement').click(function(){
//Do some stuff and re-enable #someElement
});
答案 0 :(得分:3)
您可以使用bind
和unbind
:
$("#someElement").click(function(){
$(this).unbind('click');
$('#anotherElement').show();
});
$('#anotherElement').click(function(){
$("#someElement").bind('click');
});
答案 1 :(得分:1)
不确定为什么还没有发布。
点击后,将元素.is-disabled
添加到元素中。
完成其他操作后,从元素中删除该类。
按如下方式定义该类(截至2017年1月29日,http://caniuse.com/#feat=pointer-events提供92%的浏览器支持):
.is-disabled {
pointer-events: none;
}
答案 2 :(得分:-2)
只需将代码放在此范围内的click函数中:
if (clickable == true)
{
}
如果不允许用户点击它,请将clickable
设置为false
。如果允许用户再次点击,请再次将clickable
设置为true
不像Sarfraz的anwser那样专业(当我点击“添加回答”按钮时它就不存在了,否则我不会发布这个),但它很有用并且很容易:p