如何修改类的一个元素,而不会用同一个 CSS 类打扰其余元素
How to modify one element of a class without bothering the rest with the same CSS class?
我正在尝试选择消息案例的一个实例并将其展开。这是我到目前为止拥有的jquery和javascript。现在,这会更改 messageCase 的每个实例并添加我想要的动画属性。我怎样才能做到这一点,这样就不会发生在 messageCase 的所有实例上?
我也在"使用严格"; 条件。
$(document).ready(function () {
var aTag = $("div.messageCase").id();
var divTarget = $("div.messageCase")
$(document).click(function (e) {
var target = $(e.target);
if (target.is(aTag)) {
if (divTarget.hasClass("messageCase")) {
// divTarget.removeClass("messageCase");
divTarget.addClass("messageCase messageCaseAnimation");
}
} else {
divTarget.addClass("messageCase");
}
if (!target.is(divTarget))
{
$(divTarget).removeClass("B");
}
});
});
谢谢!
在click
方法中,您将单击的元素分配给target
,因此看起来您可以执行以下操作:
target.addClass("messageCase messageCaseAnimation");
下面是代码的简化示例:
$(document).ready(function() {
var divTarget = $("div.messageCase")
$(document).click(function(e) {
var target = $(e.target);
target.addClass("messageCase messageCaseAnimation");
});
});
这是一个完整的演示:
$(document).ready(function() {
var divTarget = $("div.messageCase")
$(document).click(function(e) {
var target = $(e.target);
// Remove the messageCaseAnimation from all
divTarget.removeClass('messageCaseAnimation');
// Add the messageCaseAnimation to only the clicked
target.addClass("messageCaseAnimation");
});
})
.messageCaseAnimation {
background-color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="messageCase">
Case 1
</div>
<div class="messageCase">
Case 2
</div>
<div class="messageCase">
Case 3
</div>
<div class="messageCase">
Case 4
</div>
相关文章:
- Angular2-*ngFor和*ngIf在同一个元素上产生错误
- 如何在同一个表中显示这两个嵌套ng重复的元素
- 将同一个元素追加到两个下拉列表中只会导致最后一个元素被追加
- 事件点击不在td元素中的多个锚点标记上处理同一个类
- JQM:为什么同一个jQuery选择器根据当前页面返回不同数量的元素
- 你如何使 Math.random 数组中的每一个第 9 个元素都是同一个元素?[JavaScript]
- 如何修改类的一个元素,而不会用同一个 CSS 类打扰其余元素
- 在同一个元素中使用Javascript、单击、双击和拖动
- 在同一个元素上调用c#然后调用js
- 在同一个元素上使用多个.style.transform
- jquery:在用户点击另一个元素后,我可以返回到同一个点击事件吗
- 当一组元素不总是在同一个父元素中时,如何找到下一个匹配的元素
- 如何使用“;getElementsByClassName"从同一个元素中获取多个类
- 如何将多个事件处理程序添加到同一个html元素中,并根据事件执行不同的方法
- 如何将新元素附加到哈希中的同一个键
- 如何在同一个函数中动画最近创建的DOM元素?
- angular-Js:不能在同一个控制器的不同函数调用中访问数组元素
- 从数组中获取随机元素,显示它,然后循环-但永远不要跟在同一个元素后面
- 对同一个类的每个元素运行一个jQuery,返回undefined
- is(':first')对于应该是同一个元素的内容返回不同(错误?)的结果.jsFiddle在里面