0
我需要顯示一堆不同的閃光橫幅。最好的我可以計算是隱藏它們,那麼標題點擊顯示隱藏在錨點上的元素點擊不同的容器
<!-- list that holds links -->
<ul id="bannerList" class="list">
<li>Type
<ul>
<li><a href="#">Flash banner1 120x600</a></li>
</ul>
</li>
<li>Other Type
<ul>
<li><a href="#">Flash banner2 120x600</a></li>
</ul>
</li>
</ul>
<div id="bannerTarget">
<div class="vert">alpha</div>
<div class="horiz">one</div>
<div class="horiz">two</div>
<div class="horiz">three</div>
<div class="horiz">four</div>
</div>
#bannerTarget .vert {
width: 120px;
height: 600px;
margin: 0 auto;
float: left;
display: none;
}
#bannerTarget .horiz {
width: 728px;
height: 90px;
margin: 0 auto;
float: left;
display: none;
}
我不想寫一個點擊功能爲每個鏈接,以顯示其相應的div時表示,我將如何讓功能更實用?我遇到問題連接鏈接到它適當的div
$("ul#bannerList li a").click(function(e) {
e.preventDefault();
$parent.addClass("selected").siblings().removeClass("selected");
var href = $(this).attr('href');
$href.css("display","block");
});
這不工作...任何想法?
差不多。它顯示我點擊的第一個(標題),但是當我點擊第二個標題時不會改變它們。也就是說,它不會隱藏可見的那個並顯示我點擊的那個。此外,使用你的第二種方法,並有兩個標題(李)和兩個div的任一個我點擊顯示第一個橫幅。 – 2012-02-08 03:16:42
那個輝煌的男人(第一個)像魅力一樣工作。如果我的問題不清楚,我很抱歉,但你似乎完全明白。我非常感謝幫助。所以我可以理解它,而不只是複製和粘貼它,你說1)隱藏div bannerTarget的所有孩子(得到這個)2)取鏈接的id並用「link-」替換它後面的數字?然後用相同的id匹配div並顯示它? – 2012-02-08 03:50:04
Correctamundo。這樣你就可以保持鏈接和div的一致性,而不必爲每個鏈接重寫單獨的JS代碼。您只需要維護一個通用的命名約定。我會修正我的第二個解決方案,因爲使用'index()'可以避免ID和類。 – 2012-02-08 04:12:17