禁用和启用图像上的点击事件...jquery
Disabling and enabling click event on image...jquery
使用 jquery 启用然后重新启用并点击图像的最佳方式是什么?
我可以很容易地禁用点击事件
$(document).on("click", "#rightPager", function () {
if (condition) {
$(this).click(false);
}
});
'enabling' click 事件在一定条件下,我该如何处理?
例如,我想再次启用该按钮
$(document).on("click", "#leftPager", function () {
$("#rightPager").click(true);
});
尝试使用jQuery off method.
$(document).off('click', '#rightPager');
完整代码:
var condition = true;
$(document).on("click", "#rightPager", function () {
if(condition){
alert('Click was disabled');
$(document).off('click', '#rightPager');
}
});
您通过以下方式禁用了默认事件:
$(document).click(function(e) {
e.preventDefault();
condition ? doSomething() : doSomethingElse();
});
所以基本上不是你启用然后禁用,你阻止默认操作,检查你的条件并执行适当的功能
为了重新绑定,您需要再次使用原始的 .on("click") 事件。
编写一个函数来将事件绑定到您的图像:
function bindImage() {
$(img).on("click", function() {
// Your bind event goes here
});
}
然后写一个条件,如果你的条件returns为真,则取消绑定图像上的事件,如果它为假,则像往常一样将事件重新绑定到图像。
if (condition) {
$(img).unbind();
} else {
bindImage();
}
或者,您可以在单个函数中完成此操作,例如:
$(document).on("click", "#rightPager", function () {
if (condition) {
// terminate the function
return false;
} else {
// put your function here to run as normal
}
});
使用 jquery 启用然后重新启用并点击图像的最佳方式是什么?
我可以很容易地禁用点击事件
$(document).on("click", "#rightPager", function () {
if (condition) {
$(this).click(false);
}
});
'enabling' click 事件在一定条件下,我该如何处理?
例如,我想再次启用该按钮
$(document).on("click", "#leftPager", function () {
$("#rightPager").click(true);
});
尝试使用jQuery off method.
$(document).off('click', '#rightPager');
完整代码:
var condition = true;
$(document).on("click", "#rightPager", function () {
if(condition){
alert('Click was disabled');
$(document).off('click', '#rightPager');
}
});
您通过以下方式禁用了默认事件:
$(document).click(function(e) {
e.preventDefault();
condition ? doSomething() : doSomethingElse();
});
所以基本上不是你启用然后禁用,你阻止默认操作,检查你的条件并执行适当的功能
为了重新绑定,您需要再次使用原始的 .on("click") 事件。
编写一个函数来将事件绑定到您的图像:
function bindImage() {
$(img).on("click", function() {
// Your bind event goes here
});
}
然后写一个条件,如果你的条件returns为真,则取消绑定图像上的事件,如果它为假,则像往常一样将事件重新绑定到图像。
if (condition) {
$(img).unbind();
} else {
bindImage();
}
或者,您可以在单个函数中完成此操作,例如:
$(document).on("click", "#rightPager", function () {
if (condition) {
// terminate the function
return false;
} else {
// put your function here to run as normal
}
});