2016-03-31 18 views
-2

私はこの場で私のクラスにCSSクラスを置き換える

<div class="btn btn-pagination"> 
    <i class="fa fa-angle-right"></i> 
</div> 

ようなHTMLをレンダリングすることだし、ページのロードに私はmyClass

fa fa-angle-rightを交換したいので、私は

$(document).ready(function() { 
    $('.btn.btn-pagination').children($('.fa.fa-angle-right').removeClass()); 
    $('.btn.btn-pagination').children().addClass('myClass'); 
}) 
を試してみました

これはうまくいかないので、私はここで間違っていますか?

+1

あなたが何を期待するか、非常に[OK]を働いていますか? – guradio

+0

check https://jsfiddle.net/jmyejzn9/ – guradio

+1

@guradio明らかにそうではありません:) – user1765862

答えて

0

あなたのコードはうまくいくはずですが、より良いセレクタとjQueryチェーンを使用してこれを実現する方法を以下に示します。

これを試してください: -

$(document).ready(function() { 
    $('.btn.btn-pagination').children('.fa.fa-angle-right').removeClass().addClass('myClass'); 
}); 

DEMO

OR

$(document).ready(function() { 
    $('div.btn.btn-pagination > i.fa.fa-angle-right').removeClass().addClass('myClass'); 
}); 

DEMO

-1

はデモhereを参照してください。

以下のコードを見つけてください:

HTML:

<div class="btn btn-pagination"> 
    <i class="fa fa-angle-right"></i> 
</div> 

JS:

$(document).ready(function() { 
    $('.btn.btn-pagination > i').attr('class', 'myClass'); 
}) 
0

より良い解決策は、一度だけのDOMにアクセスする必要があります。

jQuery(document).ready(function($) { 
 
    return $('.btn.btn-pagination .fa.fa-angle-right') 
 
    .removeClass() 
 
    .addClass('foobaz') 
 
    ; 
 
});
.foobaz { background: red; width: 200px; height: 100px; margin: 0 auto; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="btn btn-pagination"> 
 
    <div class="fa fa-angle-right"></div> 
 
</div>

+0

質問!どうしてあなたはそこで「リターン」を使うのですか?それなしではうまくいかないでしょうか? – NachoDawg

+1

'return'ステートメントがなくても動作します。私はそれをもっと読みやすく、ちょっと習慣だと思って使用しました... – Hitmands

0

HTML

<div class="btn btn-pagination"> 
    <i class="fa fa-angle-right"></i> 
</div> 

JS

$(document).ready(function(){ 
    $(".fa .fa-angle-right").addClass('myClass'); 
    $(".fa .fa-angle-right").removeClass('.fa-angle-right'); 
    }); 
関連する問題