jQuery changing css class to div

前端 未结 6 681
傲寒
傲寒 2020-12-14 06:35

If I have one div element for example and class \'first\' is defined with many css properties. Can I assign css class \'second\' which also has many properties differently

相关标签:
6条回答
  • 2020-12-14 06:40

    You can add and remove classes with jQuery like so:

    $(".first").addClass("second")
    // remove a class
    $(".first").removeClass("second")
    

    By the way you can set multiple classes in your markup right away separated with a whitespace

    <div class="second first"></div>
    
    0 讨论(0)
  • 2020-12-14 06:46

    An HTML element like div can have more than one classes. Let say div is assigned two styles using addClass method. If style1 has 3 properties like font-size, weight and color, and style2 has 4 properties like font-size, weight, color and background-color, the resultant effective properties set (style), i think, will have 4 properties i.e. union of all style sets. Common properties, in our case, color,font-size, weight, will have one occuerance with latest values. If div is assigned style1 first and style2 second, the common prpoerties will be overwritten by style2 values.

    Further, I have written a post at Using JQuery to Apply,Remove and Manage Styles, I hope it will help you

    Regards Awais

    0 讨论(0)
  • 2020-12-14 06:50
    $(".first").addClass("second");
    

    If you'd like to add it on an event, you can do so easily as well. An example with the click event:

    $(".first").click(function() {
        $(this).addClass("second");
    });
    
    0 讨论(0)
  • 2020-12-14 06:52
    $(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
            )}; 
    )};
    
    0 讨论(0)
  • 2020-12-14 06:54

    This may not be exactly on target because I am not completely clear on what you want to do. However, assuming you mean you want to assign a different class to a div in response to an event, the answer is yes, you can certainly do this with jQuery. I am only a jQuery beginner, but I have used the following in my code:

    $(document).ready(function() {
        $("#someElementID").click(function() {  // this is your event
            $("#divID").addClass("second");     // here your adding the new class
        )}; 
    )};
    

    If you wanted to replace the first class with the second class, I believe you would use removeClass first and then addClass as I did above. toggleClass may also be worth a look. The jQuery documentation is well written for these type of changes, with examples.

    Someone else my have a better option, but I hope that helps!

    0 讨论(0)
  • 2020-12-14 07:02

    Yep, easily.

    $("#mydiv").attr("class", "second");
    
    0 讨论(0)
提交回复
热议问题