第一次問一個問題,但這個網站已經回答了幾百個我。奇數問題動畫2 div
好吧,我正在使用jquery從每個按鈕的動畫2個div。他們工作,但有一個我無法弄清楚的小故障。這兩個div在css中的高度都是0。如果我點擊第一個按鈕,第一個div會打開。然後點擊第二個按鈕,第一個div關閉,第二個打開(根據需要)。但是,如果我再次單擊第二個按鈕並關閉div,則再次單擊第一個按鈕,直到再次單擊,纔會發生任何事情。我希望嘟makes有道理。 任何幫助解決這個毛刺將是偉大的,謝謝
這裏是一個jfiddle它。 http://jsfiddle.net/Jptalon/AMu2Z/1/
<button id="btnOne">One</button>
<button id="btnTwo">Two</button>
<div id="one">
<p>one text</p>
</div>
<div id="two">
<p>two text</p>
</div>
<script>
var stateone = true;
var statetwo = true;
$(function() {
$("#btnOne").click(function(){
var x = document.getElementById('two');
if (x.style.height != 0){ $("#two").animate({height:"0px" }, "slow"); statetwo = !statetwo;}
if (stateone) {
$("#one").animate({height:"100px" }, "slow");
} else {
$("#one").animate({height:"0px" }, "slow");
}
stateone = !stateone;
});
});
$(function() {
$("#btnTwo").click(function(){
var y = document.getElementById('one');
if (y.style.height != 0){ $("#one").animate({height:"0px" }, "slow"); stateone = !stateone;}
if (statetwo) {
$("#two").animate({height:"100px" }, "slow");
} else {
$("#two").animate({height:"0px" }, "slow");
}
statetwo = !statetwo;
});
});
</script>