我寫了很多類似於以下代碼的東西。它基本上根據某些條件來切換元素。有沒有像jQuery.toggle(布爾)存在?
在下面的組裝示例中,條件是「如果agree
複選框被選中並且name
字段不爲空」。
$("button").click(function() {
if ($("#agree").is(":checked") && $("#name").val() != "") {
$("#mydiv").show();
} else {
$("#mydiv").hide();
}
});
我希望有某種類似的jQuery函數可以這樣工作。
$("button").click(function() {
var condition = $("#agree").is(":checked") && $("#name").val() != "");
$("#mydiv").toggle(condition);
});
有沒有像這樣的東西呢?或者除了第一個例子之外,還有其他方法可以以更少的方式實現此目的嗎?
你知道這個函數的一個版本支持轉換的緩動/淡入/滑動嗎?這種特殊的方法似乎並不如此,並且它讓我的頁面跳躍很快,對用戶來說比一張溫和的幻燈片更令人困惑。 –
是的,它被添加到jQuery版本1.4.3。查看文檔頁面(http://api.jquery.com/toggle/#toggle2),您會看到有三種方法可以調用toggle(),以便使用以下內容:.toggle([duration],[ [回調]) – jessegavin
AFAIK你不能傳遞一個布爾值和一個持續時間/緩動等等,但是我希望立場糾正。 – Galaxy