点击一个div,另一个div做出对应反应,用js

<div id="show">
<div>1</div>
<div>2</div>
<div>3</div>
</div>

<div id="click">
<div>click1</div>
<div>click2</div>
<div>click3</div>
</div>

要求:1,点击click1,show对应显示1(2,3消失)
2,与此同时,click1的样式改变
3,点击其它click,显示类似。
谢谢

keiu 的 jQuery 代码为正解。下面是用原生 JavaScript 实现,相对复杂一些。


<script type="text/javascript">
window.onload = function() {
    var click_divs = document.getElementById("click")
        .getElementsByTagName("div");
    var show_divs = document.getElementById("show")
        .getElementsByTagName("div");
    for(var i = 0; i < click_divs.length; i++) {
        !function(a) {
            // 点击 #click div
            click_divs[a].onclick = function() {
                // #show div 全部隐藏
                for(var x = 0; x < show_divs.length; x++) {
                    show_divs[x].style.display = "none";
                }
                // 对应 #show div 显示
                show_divs[a].style.display = "block";

                // #click div 样式还原
                for(var y = 0; y < show_divs.length; y++) {
                    click_divs[y].style.fontWeight = "Normal";
                }
                // 对应 #click div 样式加粗
                click_divs[a].style.fontWeight = "Bold";
            };
        }(i);
    }
};
</script>

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-26
使用jQuery
$("#click div").click(function(){
var index=$(this).index();
$("#show div").eq(index).show("slow").siblings().hide("fast");
});本回答被网友采纳