javascript - 根据单击的链接标题显示/隐藏元素?

标签 javascript jquery

我试图根据 jquery 中超链接的 title 显示和隐藏元素 (DIV)。

我的 html 看起来像这样:

<a title="booz" href="" class="netro">booz</a>
<a title="books" href="" class="netro">books</a>
<a title="sam" href="" class="netro">sam</a>


<div data-title="booz" class="drag">something here</div>
<div data-title="booz" class="drag">something here</div>
<div data-title="booz" class="drag">something here</div>
<div data-title="booz" class="drag">something here</div>
<div data-title="booz" class="drag">something here</div>



 <div data-title="sam" class="drag">another thing here</div>
 <div data-title="sam" class="drag">another thing here</div>
 <div data-title="sam" class="drag">another thing here</div>

<div data-title="books" class="drag">oh well</div>
<div data-title="books" class="drag">oh well</div>
<div data-title="books" class="drag">oh well</div>

这是 jquery 代码:

 $('.netro').click(function(event) {
  var title = $(this).attr('title');
  var allElems = $('"' + title + '"').not(this);

  allElems.show();
});

但是,我的代码根本没有执行任何操作。

有人可以就这个问题提出建议吗?

我必须补充一点,所有具有 drag 类的 div 都具有 display:none; 的 CSS。

最佳答案

您需要使用类和属性选择器

$('.netro').click(function (event) {
    var title = $(this).attr('title');
    var $curr = $('.drag[data-title="' + title + '"]').toggle();
    $('.drag').not($curr).hide();
    event.preventDefault()
});

演示:Fiddle

关于javascript - 根据单击的链接标题显示/隐藏元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29503898/

相关文章:

javascript - 更简洁的 '&&'运算符javascript

javascript - 如何使用 jquery 设置边距?

javascript - 停止函数 jquery 重复

javascript - 更多/更少的影响

javascript - 无法使用 JavaScript 访问输入日期值

c# - HashTable、Array、ArrayList、LinkedList 等的空间复杂度是多少(如果还有的话)

javascript - 网页上基于 3DSMax .obj/.max 的模型显示与 AJAX 可点击功能集成

javascript - 将 unicode 转义添加到动态字符串值

jquery - 使用 "left=0"css 属性定位 div

jQuery 网页预览