我有使用jQuery标签的网站。我有一个带有基本描述的侧边栏。下面是一张图片,下面是一个导航到标签的列表。
我有这样的话,如果你点击链接,比如标签2,侧边栏中的图像会改变以匹配标签2的内容,依此类推。
这个工作正常了大约一个月,我突然回到了项目中,它不再支持调用两个ID。我知道使用两个ID是不正确的,但它确实有效。
想知道是否有人能说清楚。
<div id="container">
<div id="tabs">
<div class="sidebar">
<p>Basic description</p>
<div id="p1"><img src="product1.jpg"/></div>
<div id="p1"><img src="product2.jpg"/></div>
<div id="p1"><img src="product3.jpg"/></div>
<ul>
<li><a href="#p1"><h5>Product 1</h5></a></li>
<li><a href="#p2"><h5>Product 2</h5></a></li>
<li><a href="#p3"><h5>Product 3</h5></a></li>
</ul>
</div><!--close sidebar-->
<div class="content">
<div id="p1">
<p>Product 1 info</p>
</div> <!-- close p1 -->
<div id="p2">
<p>Product 2 info</p>
</div> <!-- close p2 -->
<div id="p3">
<p>Product 3 info</p>
</div> <!-- close p3 -->
</div><!-- close content -->
</div><!-- close tabs -->
</div><!-- close container -->
答案 0 :(得分:5)
这是正确的方法。您将使用jQueryUI的内置回调功能。
http://jsfiddle.net/isherwood/73B4f
<style>
.sidebar-img {
display: none;
}
</style>
<div id="container">
<div id="tabs">
<div class="sidebar">
<p>Basic description</p>
<div class="sidebar-img" style="display: block;">Image 1</div>
<div class="sidebar-img">Image 2</div>
<div class="sidebar-img">Image 3</div>
...
</div><!-- close content -->
</div><!-- close tabs -->
</div><!-- close container -->
<script>
$('#tabs').tabs({
activate: function (event, ui) {
$('.sidebar-img').hide();
$('.sidebar-img').eq( ui.newTab.index() ).show();
}
});
</script>