javascript - 检测点击,检查属性值和里面的文字,显示元素

标签 javascript jquery css userscripts

我需要检测元素(.menuitem)的点击,检查它包含的文本。 然后根据属性(is-checked),隐藏或显示其他元素。 只有在单击其他按钮时我才需要它。

<div class="items">
  <div class="menuitem" is-checked="true">
    <div class="ytp-menuitem-label">Button 1</div></div>
  <div class="menuitem" is-checked="false">
    <div class="ytp-menuitem-label">Button 2</div></div>
</div>
<div class="element">some content</div>
<div class="element">some more content</div>

$('.menuitem').click(function () {
if ($('.menuitem').text().trim() === "Button 2"){
if ($('[is-checked="true"]'))
  $('.element').css('display', 'block');
if ($('[is-checked="false"]'))
  $('.element').css('display', 'none'); }
});

这是一个 JSFIDDLE ,我所拥有的:

最佳答案

$('.menuitem').click(function() {
  console.log($(this).text().trim())
  if ($(this).text().trim() === "Button 2") {
    if ($(this).attr('is-checked') == 'true') {
      $('.element').css('display', 'block');
    } else {
      $('.element').css('display', 'none');
    }





  }
});
.items {
  height: 30px;
  margin-bottom: 5px;
}
.menuitem {
  float: left;
  margin-right: 10px;
  border: 1px solid;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="items">
  <div class="menuitem" is-checked="true">
    <div class="ytp-menuitem-label">Button 1</div>
  </div>
  <div class="menuitem" is-checked="false">
    <div class="ytp-menuitem-label">Button 2</div>
  </div>
</div>

<div class="element">some content</div>
<div class="element">some more content</div>
<div class="element">even more content</div>

  1. 使用$(this).attr('is-checked')获取值
  2. 同样使用$(this).text().trim()获取点击元素的文本

关于javascript - 检测点击,检查属性值和里面的文字,显示元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38580329/

相关文章:

javascript - ruby on Rails "Google is not defined"错误

javascript - promise 不在 thenable 中提供更新的数组

javascript - select2 插件事件后从选项列表中删除项目

javascript - 如何删除基于 svg 的饼图字符切片之间的空间?

javascript - Chai/Mocha 不可变测试始终失败

javascript - 带有 mailto 链接的 Chrome "Launched External Handler"控制台语句

javascript - Jquery .focusout 不适用于移动设备(slicknav)

jquery - 在页面加载时显示第一个 div,并在我单击另一个 anchor 时隐藏它

CSS Float 在同一行中固定和流动

css - Div 不在屏幕底部