javascript - 面向对象的 jQuery 问题

标签 javascript jquery jquery-selectors

$("#e1").click(function() {
  $("#descriptions div").removeClass("show");
  $("#e1d").addClass("show");
});

$("#e2").click(function() {
  $("#descriptions div").removeClass("show");
  $("#e2d").addClass("show");
});


<div id="descriptions">

<div id="e1"></div>
<div id="e1d" class="description"></div>

<div id="e2"></div>
<div id="e2d" class="description"></div>

</div>

我正在尝试找出一种方法来不重复代码并让 jQuery 自动搜索并链接 div。因此,将每个名称为 e1~∞ 的 id 链接到 e1~∞d 就太好了。不确定如何实现正确的面向对象方法。感谢您的阅读!

最佳答案

给你的元素类,然后通过类名在 jQuery 中引用它们:

<div id="descriptions">

<div id="e1" class="trigger"></div>
<div id="e1d" class="description"></div>

<div id="e2" class="trigger"></div>
<div id="e2d" class="description"></div>

</div>


$(".trigger").click(function() {
      $('#descriptions>div').removeClass("show");
      $(this)
      .next("div.description")
      .addClass("show");
});

综上所述,看起来您想要显示/隐藏 div。您可能想研究一下 jQuery 的“切换”。

关于javascript - 面向对象的 jQuery 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1724320/

相关文章:

javascript - 搜索表单 - 如何向用户输入添加文本

javascript - jquery - 禁用具有动态名称的按钮和输入

javascript - jQuery:选择器等价于parents()方法

javascript - Laravel - AJAX 搜索适用于输入,但不适用于选择

javascript - 使用 jQuery 聪明地下载多个模板文件吗?

jQuery 和 CSS - 如何阻止相关元素左右浮动(滚动时)?

jQuery + Jeditable - 检测选择何时更改

javascript - 将相同的数字数组对象与其他数组中的相同数字合并?

php - Magento 添加到购物车不起作用

javascript - 如何使用 javascript promise 等待 jquery ajax 完成然后再进行下一个 promise ?