jQuery将css类更改为div

时间:2009-12-02 20:05:45

标签: jquery css html

如果我有一个div元素,并且类'first'定义了许多css属性。我是否可以在某些事件中分配css类'second',它也有许多不同的属性定义到同一个div,而不需要写入每个属性。

6 个答案:

答案 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
        )}; 
)};