有没有办法在满足条件时阻止 .click() 触发?我的代码看起来像:
$(document).ready(function() {
// stocheaza ordinea corecta a imaginilor
var correctOrder = $("#puzzle > img").map(function() {
return $(this).attr("src");
}).get();
// amesteca imaginile
var x = $("#puzzle > img").remove().toArray();
for (var i = x.length - 1; i >= 1; i--) {
var j = Math.floor(Math.random() * (i + 1));
var bi = x[i];
var bj = x[j];
x[i] = bj;
x[j] = bi;
}
$("#puzzle").append(x);
// event onclick pe 2 piese sa'si schimbe pozitia
$("img.element").click(function(){
if (clickCount == 0)
{
imgSrc = $(this).attr("src");
lastImgId = $(this).attr("id");
clickCount++;
}
else {
$("#"+lastImgId).attr("src",$(this).attr("src"));
$(this).attr("src",imgSrc);
clickCount = 0;
// returneaza ordinea imaginilor curente
var currentOrder = $("#puzzle > img").map(function() {
return $(this).attr("src");
}).get();
// compara ordinea imaginilor curente cu cea corecta
if (currentOrder.compare(correctOrder))
updateBubble(2);
}
});
});
当此条件 if (currentOrder.compare(correctOrder))
出现时,我需要停止 $("img.element").click(function(){ }
遇到了。目前这个 .click() 函数允许我点击 2 个图像并改变它们的位置,但是 updateBubble(2);
是最终的反馈,当这个反馈是我不能改变图像给出了。谢谢
最佳答案
试试这个:
$("img.element").click(function(){
if(currentOrder.compare(correctOrder))//return and do not execute click event code if condition
return;
//rest click event code here
});
关于javascript - 停止 .click() 触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22756211/