2012-10-13 165 views
2

我想在我的網站上製作手風琴,類似於看到here。然而,每當我點擊手風琴的地方,它不會下降,而是將我鏈接到my_url#collapseOne(或者兩個或三個,取決於我點擊哪一個)。而且,當我加載網頁時,菜單1已經被刪除(不可取),另外兩個看起來是正確的。twitter引導手風琴

關於如何正確實現手風琴效果的任何想法?

+2

向我們展示您的標記,我們無法通知您沒有標記時出錯。 – ncremins

+0

您可以按照[doc](http://twitter.github.com/bootstrap/)上的說明開始操作javascript.html#collapse),並且不要忘記檢查是否包含jQuery和插件文件 – Sherbrow

+0

我扭曲的標記是我粘貼到我的代碼中的標記。我的代碼雖然很長,但我不確定其他部分是相關的。我想我最爲困惑的是,爲什麼當它被點擊時鏈接到了url +'#collapseNumber',並且將頁面滾動到那個位置。我認爲這樣做的唯一原因是因爲在代碼的早些時候,我有一個頂級菜單,您可以點擊它並鏈接到哈希標記的hrefs。 [稍微更新的標記](http://jsfiddle.net/gqe7g/244/),不知道它是否有幫助。 – user1253952

回答

1

因此,有你需要做的

  1. 當文檔準備好兩件事情,你需要初始化你的手風琴。這意味着你將通過所有的手風琴容器並初始化它們以關閉。

  2. 您會將點擊事件處理程序附加到打開/關閉手風琴的鏈接。爲了防止瀏覽器跟隨這些鏈接,您應該從那些事件處理程序返回false,這會阻止事件再冒泡。這將阻止瀏覽器關注鏈接。

+1

你不需要這樣做,因爲插件做到了。您需要初始化手風琴,但您可以激活所有手風琴,甚至可以使用標記'data-toggle =「collapse」',這樣就不需要任何JavaScript:[doc](http:// twitter。 github.com/bootstrap/javascript.html#collapse)。 – Sherbrow

+0

這是我的假設,OP是試圖製作一個自定義的手風琴,因爲他們只是工作。這個例子包含了所有要求的內容。也許很高興看到一些源代碼。 –

+0

對不起,我對網頁設計瞭解不多。我把我發佈的標記放在我的代碼中,結果如上所述。我不確定在標記中還有什麼用處。我也發現它奇怪的是它重定向到URL後面加上'#collapseNumber'。在我的代碼早些時候,我在頂部有一個菜單,它鏈接到頁面後面的地方,這些地方是散列標記的hrefs。 – user1253952

1

http://twitter.github.com/bootstrap/javascript.html#collapse。如果您定製了引導程序安裝,請確保您具有所需的文件。如果您在資產管道中使用twitter-bootstrap-rails gem,那麼您應該很好地放下代碼並查看它的工作方式。

+0

我的確有必需的文件。 [This](http://i.imgur.com/1jwGB.png)就是當我拖放寫在您鏈接到的網站上的html時的樣子。同時點擊它們會導致頁面鏈接到它們。即,它轉到url +'#collapseNumber'。 – user1253952