javascript - 选项标签 : how to show multiple classes

标签 javascript jquery html

我有一个简单的下拉列表,根据所选内容显示和隐藏 div。

我希望每个选择都显示两个 div(“.buzzard”和“.pattern1”),但我不知道如何标记它们。

请参阅Fiddle

<div class="dropdown">
  <select id="opts" data-target=".my-info-1">
    <option value="buzzard" data-show=".buzzard">Buzzard</option>
    ...
  </select>
</div>

<div class="my-info-1">
  <div class="buzzard hide">The buzzard is by far the most common of all our birds of prey, and its expansion has been dramatic</div>
  ...
  <div class="pattern1 hide"><h4>Distribution</h4><img src="#"></div>
  ...
</div>

<script>
$('select#opts').change(function() {
  var target = $(this).data('target');
  $(target).children().addClass('hide');
  var show = $("option:selected", this).data('show');
  $(show).removeClass('hide');
});
</script>


.hide {
  display: none;
}

我已经尝试过

<option value="buzzard" data-show=".buzzard .pattern">Buzzard</option>

最佳答案

您应该使用,.buzzard,.pattern

记住 $ 接受 selector css syntax ,空格代表“后代”,逗号代表“

示例:

$('.class1 .class2') 将捕获 class2 的元素,该元素位于 class1 的其他元素内

<div class="class1">
    <div>
       <div class="class2">
       </div>
    </div>
</div>    

$('.class1, .class2') 将捕获类为 class1 或 class2 的元素

<div class="class1 class2">
</div>

示例: https://jsfiddle.net/L0zpg6d0/4/

关于javascript - 选项标签 : how to show multiple classes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34840832/

相关文章:

javascript - 向字符串中的每个空格添加一个空格,然后循环返回,直到满足长度

javascript - 如何将基于 ul li 的下拉列表中的选定值设置为 SELECTED

javascript - JQuery 增量/减量值取决于选定的复选框

javascript - ruby rails 4 : Trouble with adding Javascript files in Rails web application

javascript - Facebook 页面插件不接受我的页面 URL

javascript - 使用 javascript 选择值下拉框

javascript - Chrome 更新 61.0.3163.79 CPU 使用率高

javascript - 基于 CSS 类在文本区域内动态分配字符限制

javascript - x = {} 创建自发对象

javascript Canvas 标签和stroketext方法