javascript - jQuery 在 div 和切换类之外找到下一个类

标签 javascript jquery html css

对 jquery 很陌生,遇到了一个问题,我想在我请求的最接近的类上切换一个类。

下面的代码示例,我在这里做错了什么?

// more info functions
$('.popup').click(function() {
  $(this).closest('.popup-input').toggleClass('hidden');
});
.hidden {
  display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_1_Popup" name="PC_Row_1_Popup" value="" placeholder="More info description" class="hidden popup-input form-control ccm-input-text">

<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_2_Popup" name="PC_Row_2_Popup" value="" placeholder="More info description" class="hidden popup-input form-control ccm-input-text">

<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_3_Popup" name="PC_Row_3_Popup" value="" placeholder="More info description" class="hidden popup-input form-control ccm-input-text">

<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_4_Popup" name="PC_Row_4_Popup" value="" placeholder="More info description" class="hidden popup-input form-control ccm-input-text">

最佳答案

您可以使用 parent()向上移动到父 div 然后使用 next('.popup-input')以类 popup-input 为目标的下一个元素最后使用 toggleClass() 切换类, 检查下面的例子。

希望这对您有所帮助。


$('.popup').click(function() {
    $(this).parent().next('.popup-input').toggleClass('hidden');
})
.hidden {
  display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_1_Popup" name="PC_Row_1_Popup" value="" placeholder="More info description" class="popup-input form-control ccm-input-text">

<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_2_Popup" name="PC_Row_2_Popup" value="" placeholder="More info description" class="popup-input form-control ccm-input-text">

<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_3_Popup" name="PC_Row_3_Popup" value="" placeholder="More info description" class="popup-input form-control ccm-input-text">

<div class="column medium">
  <div class="icon info popup">link</div>
  <div class="icon more"></div>
</div>
<input type="text" id="PC_Row_4_Popup" name="PC_Row_4_Popup" value="" placeholder="More info description" class="popup-input form-control ccm-input-text">

关于javascript - jQuery 在 div 和切换类之外找到下一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34177033/

相关文章:

javascript - 在无序列表中移动并更改其中列表项的位置

javascript - 使用 jquery 将样式设置为 div 中的段落

javascript - 如何在 JavaScript 中对 HTML Canvas 进行洪水填充?

jquery - Selenium 测试中 $ 未定义错误

jquery - CSS 中的进度图表

html - 两个固定导航 - 如何在它们之间居中放置 block

javascript - 是否有可能在 css 中使固定主体不滚动?

css - 带有全高列的 IE10 Bootstrap 3.2 col-pull bug

Javascript:Video.js 在硬刷新之前不会加载

javascript - 使用 serialScroll jQuery 插件停止在页面中循环