从一个链接显示具有相同ID的两个div的内容

use*_*893 2 jquery user-interface tabs jquery-ui

我有使用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 -->
Run Code Online (Sandbox Code Playgroud)

ish*_*ood 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>
Run Code Online (Sandbox Code Playgroud)

http://api.jqueryui.com/tabs/#event-activate