Search code examples
javascriptjqueryhtmlclassname

Count specific elements and add count to class name using jquery


How can I count the number of elements with a specific class and add the count to each one as a new class name with jquery?

$('.full-screen').each(function(i) {
    $(this).addClass('.full-screen-', i);
});

I want to create:

<div class="full-screen full-screen-1"></div>
<div class="full-screen full-screen-2"></div>
<div class="full-screen full-screen-3"></div>
<div class="full-screen full-screen-4"></div>
<div class="full-screen full-screen-5"></div>

Solution

  • You can do

    $('.full-screen').each(function(i) {
        $(this).addClass('full-screen-'+(i+1));
    
    });
    

    $('.full-screen').each(function(i) {
        $(this).addClass('full-screen-'+(i+1));
        console.log($(this)[0].outerHTML)
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="full-screen full-screen-1"></div>
    <div class="full-screen full-screen-2"></div>
    <div class="full-screen full-screen-3"></div>
    <div class="full-screen full-screen-4"></div>
    <div class="full-screen full-screen-5"></div>