如果我有一个div元素,并且类'first'定义了许多css属性。我是否可以在某些事件中分配css类'second',它也有许多不同的属性定义到同一个div,而不需要写入每个属性。
答案 0 :(得分:89)
是的,很容易。
$("#mydiv").attr("class", "second");
答案 1 :(得分:59)
$(".first").addClass("second");
如果您想将其添加到活动中,您也可以轻松完成。 click事件的示例:
$(".first").click(function() {
$(this).addClass("second");
});
答案 2 :(得分:30)
您可以使用jQuery添加和删除类,如下所示:
$(".first").addClass("second")
// remove a class
$(".first").removeClass("second")
顺便说一句,您可以使用空格分隔标记中的多个类
<div class="second first"></div>
答案 3 :(得分:3)
这可能不完全符合目标,因为我不清楚你想做什么。但是,假设您想要为响应事件而为div分配不同的类,答案是肯定的,您当然可以使用jQuery执行此操作。我只是一个jQuery初学者,但我在我的代码中使用了以下内容:
$(document).ready(function() {
$("#someElementID").click(function() { // this is your event
$("#divID").addClass("second"); // here your adding the new class
)};
)};
如果你想用第二个类替换第一个类,我相信你会首先使用removeClass,然后像上面那样使用addClass。 toggleClass也值得一看。 jQuery文档是针对这些类型的更改编写的,并附有示例。
我还有其他人有更好的选择,但我希望有所帮助!
答案 4 :(得分:2)
像div这样的HTML元素可以有多个类。假设使用addClass方法为div分配了两个样式。如果style1有3个属性,比如font-size,weight和color,而style2有4个属性,比如font-size,weight,color和background-color,那么我认为得到的有效属性集(样式)将有4个属性,即union所有款式套装。常见属性,在我们的例子中,颜色,字体大小,重量,将有一个具有最新值的occuerance。如果div首先被分配了style1而第二个被赋予了style2,那么常见的prpoerties将被style2值覆盖。
此外,我已在Using JQuery to Apply,Remove and Manage Styles撰写了一篇文章,希望它能为您提供帮助
此致 AWAIS
答案 5 :(得分:0)
$(document).ready(function () {
$("#divId").toggleClass('cssclassname'); // toggle class
});
**OR**
$(document).ready(function() {
$("#objectId").click(function() { // click or other event to change the div class
$("#divId").toggleClass("cssclassname"); // toggle class
)};
)};