如何判断一段jquery代码已经执行过了
1个回答
展开全部
然后来回答你的问题,你的问题无非是想知道 DIV 的状态,是收起的还是展开的。那么只需要在完成 slideUp 之后赋予它一个状态标记就好。在 jQuery 中,赋予状态标记的办法很多,常见方法有3个
使用 $("#flip").data()
使用 $("#flip").attr()
使用 $("#flip").addClass() 设置和 $("#flip").is(".yourClassName") 判断
第3个通常在需要配合 CSS 设置样式时使用。
然后看文档,slideUp 的两种调用方式都提供了 complete 回调,所以可以在回调中设置状态。
$("#flip").slideUp("fast", function() {
$("#flip").addClass("up");
});
然后你的 click 事件可以写成
$("#stop").on("click", function() {
var $flip = $("#flip");
if ($flip.is(".up")) {
$flip.slideDown("fast", function() {
$flip.removeClass("up");
});
} else {
$flip.slideUp("fast", function() {
$flip.addClass("up");
});
}
});
当然也不可以不用 complete 回调,直接在开始之前就设置好
$("#stop").on("click", function() {
var $flip = $("#flip");
if ($flip.is(".up")) {
$flip.removeClass("up");
$flip.slideDown("fast");
} else {
$flip.addClass("up");
$flip.slideUp("fast");
}
});
使用 $("#flip").data()
使用 $("#flip").attr()
使用 $("#flip").addClass() 设置和 $("#flip").is(".yourClassName") 判断
第3个通常在需要配合 CSS 设置样式时使用。
然后看文档,slideUp 的两种调用方式都提供了 complete 回调,所以可以在回调中设置状态。
$("#flip").slideUp("fast", function() {
$("#flip").addClass("up");
});
然后你的 click 事件可以写成
$("#stop").on("click", function() {
var $flip = $("#flip");
if ($flip.is(".up")) {
$flip.slideDown("fast", function() {
$flip.removeClass("up");
});
} else {
$flip.slideUp("fast", function() {
$flip.addClass("up");
});
}
});
当然也不可以不用 complete 回调,直接在开始之前就设置好
$("#stop").on("click", function() {
var $flip = $("#flip");
if ($flip.is(".up")) {
$flip.removeClass("up");
$flip.slideDown("fast");
} else {
$flip.addClass("up");
$flip.slideUp("fast");
}
});
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询