【问题标题】:Add class to div above将类添加到上面的 div
【发布时间】:2017-06-19 13:04:10
【问题描述】:

我有以下html结构:

<div> ... </div>
<div> ... </div>
<div> ... </div>

而我正在尝试做的是,每当我将类 active 添加到 div 标记时,它正上方的 div 标记将获得类 inactive。使用JQuery可以实现这样的事情吗?

更新

我尝试了以下方法,但这会将一个类添加到父 DIV 而不是它上面的 DIV:

if ($('div').hasClass('active')) {
    $(this).parent().addClass('inactive');
}

谢谢!

【问题讨论】:

  • HTML 中的divs 在哪里?并添加您的 jQuery 代码。
  • 这里没有任何努力。您要求的任务很简单。去做一个 jQuery 教程,你会在大约一个小时内学会它。
  • 嗨,欢迎来到堆栈溢出。向我们展示你到目前为止所拥有的!
  • 我犯了一个错误。而不是
  • @TiagoSousa 回答你的问题,是的,你可以通过使用 jQuery 来做到这一点,看看函数 addClass() 和 removeClass()

标签: javascript jquery html class add


【解决方案1】:

jQuery parent() 函数返回被选元素的父元素。见https://api.jquery.com/parent/

<div class="parent">
    <div class="child"></div>
</div>

您应该使用 prev() 函数来查找 DOM 中的前一个元素。 查看文档页面:https://api.jquery.com/prev/

您的代码可能如下所示:

var $current = $('div.active');
var $previous = $current.prev();

$previous.addClass('inactive');

变量名前的$表示它包含一个DOM元素。

小提琴

https://fiddle.jshell.net/30tf4ytw/7/

【讨论】:

猜你喜欢
相关资源
最近更新 更多
热门标签