[英]Jquery Toggle firing multiple times
jQuery 相當新。 按照各種文本和教程,我試圖了解如何讓切換 function 像上述教程中所示那樣工作。 然而,我遇到了多次被解雇的問題。
$document.ready(function() {
$(#myButtonId).click(function() {
$(#myDivId).toggle(
function() {
$(this).addClass("myClass");
$(this).next().show(); },
function() {
$(this).removeClass("myClass");
$(this).next().hide(); }
);
});
});
這是我目前的理解,上面應該點擊按鈕,打開/顯示div並將class“myClass”添加到div“myDivId”。 然后,再次單擊按鈕時,應關閉/隱藏 div 並從 div 中刪除 class。
但是,不知何故,它要么只調用了兩個切換函數中的一個,而且多次調用它。
所以,假設你的 HTML 中有一個這樣的按鈕和 div:
<button id="myButtonId">Button</button>
<div id="myDivId" class="myClass">Div that toggles</div>
您可以在 javascript 文件中執行以下操作:
jQuery(document).ready(function($)
{
$('#myButtonId').click(function()
{
$('#myDivId').slideToggle(400, function()
{
if($(this).is(':visible'))
{ $(this).addClass('myClass'); }
else
{ $(this).removeClass('myClass'); }
}
);
});
});
解釋這段代碼:
我不確定你想用 $(this).next().hide(); 做什么和 $(this).next().show(); 不過,這似乎與問題無關,如果需要,您可以將它們放回“如果可見”狀態。 :-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.