首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jquery根据元素的[title]显示和隐藏元素

问使用Jquery根据元素的[title]显示和隐藏元素
EN

Stack Overflow用户
提问于 2021-07-01 04:13:09
回答 1查看 53关注 0票数 1

我正在尝试创建一个项目列表,当您单击其中一个项目时,将打开与该项目相关的视频。所以我试着处理标题,这样每当我用title=xxx点击一个项目时,title=xxx的视频就会显示出来(而其他的就会隐藏起来)。我不知道如何使用变量来选择正确的项目。这是我尝试过的:

​

代码语言:javascript
复制
$(".speaker").click(function() {
  let speakerName = $(this).attr('title');
  console.log(speakerName);
  $(".speaker-content [title!=" + speakerName + "]").hide();
  $(".speaker-content [title ==" + speakerName + "]").show();
});
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="presentations">
  <div class="speaker" title="s5-sp1">
    <p><i class="fas fa-info-circle"></i>Dr Daniel</p>
  </div>

  <div class="speaker-content" title="s5-sp1">
    <div class="videowrapper">
      <iframe width="100%" src="https://www.youtube.com/xxx" title="YouTube video player"></iframe>
    </div>
  </div>

</div>

​

我还尝试使用for each来检查它们,但没有成功。

欢迎任何帮助,谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-01 04:23:56

您最大的错误是类和属性之间的空格。属性位于同一个类上,因此需要将它们连接起来。此外,您不能在属性中使用比较操作符==。

代码语言:javascript
复制
$('.speaker').click(function(){
  let speakerName = $(this).attr('title');
  $('.speaker-content').hide();
  $(`.speaker-content[title='${speakerName}']`).show();
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68201094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档