jQuery技术:jQuery – 如何使用子DIV显示/隐藏多个DIV

我有一个标记如下(代码从https://jsfiddle.net/nick_craver/srg6g/修改):

London & South East

jQuery技术:jQuery  – 如何使用子DIV显示/隐藏多个DIV

South West, Ireland and Wales

jQuery技术:jQuery  – 如何使用子DIV显示/隐藏多个DIV

South Central & Home Counties

jQuery技术:jQuery  – 如何使用子DIV显示/隐藏多个DIV

North England, Northern Ireland & Scotland

jQuery技术:jQuery  – 如何使用子DIV显示/隐藏多个DIV

Midlands

jQuery技术:jQuery  – 如何使用子DIV显示/隐藏多个DIV


content london 1
content london 2
content south west 1
content south west 2
content south central 1
content south central 2
content north 1
content north 2
content midlands 1
content midlands 2

我的JavaScript代码如下所示:

 $(".map-box a").click(function(e) { $("#areas div").hide(); $(this.hash).show(); e.preventDefault(); }); $("#areas div").not("#london, #london div").hide(); 

当用户点击图像时,我想隐藏当前显示的内容并显示与该图像相关联的内容,但这不起作用。

例如,

有人能告诉我我做错了什么吗?

    问题是这一行上的选择器:

     $("#areas div").hide(); 

    这是选择并隐藏作为“#areas”div的后代的所有div元素,其中不仅包括具有像“london”等的id的div,而且还包括那些div的子节点。 然后,当您显示基于像“伦敦”这样的id的div时,其子div与实际内容保持隐藏状态。

    试试这个:

     $("#areas > div").hide(); 

    同样对于最初隐藏它们的线:

     $("#areas > div").not("#london, #london div").hide();​ 

    这将只隐藏“#areas”直接孩子的div。 虽然他们隐藏了他们的孩子也会被隐藏,但是当你展示一个孩子时,它的孩子会自动出现。

    演示: http : //jsfiddle.net/7s5nP/

      以上就是jQuery教程分享jQuery – 如何使用子DIV显示/隐藏多个DIV相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。

      www.ctvol.com true https://www.ctvol.com/jquerytutorial/561750.html Article jQuery技术:jQuery – 如何使用子DIV显示/隐藏多个DIV

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/jquerytutorial/561750.html

      (0)
      上一篇 2021年2月4日
      下一篇 2021年2月4日

      精彩推荐