我正在使用slideToggle函數。如果我最初使用span標記來隱藏我的內容,並點擊該跨度的父級,我會觸發單擊事件並調用幻燈片切換。它的結果是不正確的。跨度滑落並立即滑落。但是,如果我使用div而不是span,則slideToggle可以正常工作。 有沒有人知道爲什麼這種奇怪的行爲與span?jQuery的slideToggle函數與span和div的行爲不同嗎?
1
A
回答
1
默認情況下,span
具有內聯佈局特性,而div
是塊佈局。在幕後,span
元素在其CSS聲明中有display: inline
,而div
元素的樣式爲display: block
。實際上,如果您在頁面上放置兩個span
元素而沒有造型,則它們會彼此相鄰,而兩個div
元素會出現在彼此之下。有關CSS display
的更多信息,請訪問MDN。
slideToggle
將動畫元素的width
屬性,然後在none
和原始狀態之間切換其display
屬性。這對內聯元素不起作用,因爲width
屬性不適用於它們的樣式。自己試試!
#test {
display: inline; // Try switching this to block
width: 100px; // This only works for block elements
background: red; // Make the change visible
}
所以真的,沒有什麼錯span
,它是所有關於風格是如何應用的。如果你想給一個內聯元素的寬度,你可以使用display: inline-block
:
#test {
display: inline-block; // Layout inline with other content as one block
width: 100px; // This works!
background: red;
}
相關問題
- 1. 的jQuery的slideToggle回調函數和toggleclass
- 2. jQuery slideToggle行爲
- 3. 的Javascript,jQuery的:改變一個div的某個詞爲<span>與函數
- 4. jQuery中的slideToggle函數
- 5. jQuery slideToggle的問題函數
- 6. JQuery函數slideToggle/toggle
- 7. jQuery的slideToggle()函數不穩定
- 8. Jquery SlideToggle Different Div
- 9. jQuery的軌道不與.slideToggle()
- 10. jQuery slideToggle奇怪的行爲
- 11. .slidetoggle jquery中單獨的div
- 12. jquery slideToggle from div的中心
- 13. slideToggle從相同的DIV類
- 14. Jquery slideToggle函數調用後面的代碼的div標記
- 15. jQuery slideToggle多個div
- 16. JQuery - SlideToggle在同一時間多個DIV?
- 17. 使用jquery函數隱藏/顯示div和更改class span
- 18. R:「[」函數的行爲與名爲「foo」的行爲不同
- 19. jQuery bug,slidetoggle()函數堆棧
- 20. jQuery .slideToggle()函數不能正常工作
- 21. 的jQuery的slideToggle()回調函數
- 22. jQuery和在不同的DIV
- 23. slideToggle對不同的DIV有不同的效果
- 24. jQuery的問題與的slideToggle()
- 25. JQuery的圖片更改SlideToggle函數
- 26. JQuery編碼 - 多鏈接slideToggle 1 div標記和不同的內容
- 27. 的slideToggle DIV不工作
- 28. 的Jquery的slideToggle特定的div
- 29. 如何更換 「(」 和 「)」 與 「<span>」 和 「</span>」 jQuery的
- 30. 的jQuery的slideToggle另一個DIV
嘗試建立一個[的jsfiddle(http://jsfiddle.net)複製的問題。我會大膽猜測它與jQuery無關,但它是關於CSS的。一個div是一個塊元素,而一個跨度不是,嘗試在你的CSS中將span設置爲'display:block',看看它是否不能爲你修復? – adeneo