JS实现的“多复选框控制多DIV的显隐”要怎样简化JS代码?

代码如下,目前的JS只是实现了第一个复选框的控制,如果要控制5个复选框各自显隐,我用笨办法是把这段JS写5编(ck1,ck2,ck3。。。囧),但这样显然有点太二了,大侠们帮忙看看要用怎样的逻辑来实现多个复选框控制的显隐呢?
注:目前的思路是ck12345各自控制dd的12345。是不是要用到数组咧?求师兄们赐完整代码供师弟研磨研磨。。。

<html><head><style>.aaa{position:fixed; border:1px solid #666; top:120px; left:330px; width:90px; height:auto; overflow:hidden; font:12px/20px 微软雅黑;}div div{width:100px;height:60px;background-color:#CCC; float:left; text-align:center; margin:2px;}</style><script type="text/javascript">window.onload=function(){setInterval("show()",100)}function show(){var x=document.getElementById("ck1");var s=document.getElementById("dd1");if(x.checked) { s.style.display="block"; }else { s.style.display="none"; }}</script></head><body><div> <div id="dd1">淘宝</div> <div id="dd2">新浪</div> <div id="dd3">网易</div> <div id="dd4">天猫</div> <div id="dd5">百度</div></div><div class="aaa"><input type="checkbox" checked="checked" id="ck1" /><label for="ck1">淘宝</label><br /><input type="checkbox" checked="checked" id="ck2" /><label for="ck2">新浪</label><br /><input type="checkbox" checked="checked" id="ck3" /><label for="ck3">网易</label><br /><input type="checkbox" checked="checked" id="ck4" /><label for="ck4">天猫</label><br /><input type="checkbox" checked="checked" id="ck5" /><label for="ck5">百度</label></div></body></html>

<div id="dd1">淘宝</div>
    <div id="dd2">新浪</div>
    <div id="dd3">网易</div>
    <div id="dd4">天猫</div>
  
</div>
<input type="checkbox"  id="ck1" value="dd1" /><label for="ck1">淘宝</label><br />
<input type="checkbox"  id="ck2" value="dd2" /><label for="ck2">新浪</label><br />
<input type="checkbox"  id="ck3" value="dd3" /><label for="ck3">网易</label><br />
<input type="checkbox"  id="ck4" value="ck4" /><label for="ck4">天猫</label><br />

 <script type="text/javascript">
     $(":checkbox").each(function () {
         $(this).click(function () {
             if ($(this).attr("checked") == "checked") {
                 $("#" + $(this).val()).hide();

             } else {
                 $("#" + $(this).val()).show();
             }
         });

     });
      </script>

追问

感谢回答,我试了下,在加载jquery、input加入 checked="checked"的情况下,复选框可以实现对应div的隐藏,但是隐藏后再次点击复选框无法实现重新显示,这个是什么情况?求赐教~

追答

我这可以啊,你只用我的代码试试

追问

是这样的,按你说的,在我原代码里面替换到你的这段代码后,还是只有第一个有效(我以前就是仅仅第一个有效),好像是因为我之前的这一段代码,我删掉后就不行了。

这段代码只控制了ck1和dd1,并未控制到另外的几对呢。

追答

我的是jquery 你的是js 我的那个你用引用jquery

追问

有引用,但是还是无法实现效果囧~,求大神赐完整代码。。。

追答

我这能实现,你那实现不了我无能无力啊

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答
大家正在搜