2016-08-07 10 views
3

CSSファイルをページヘッダーに追加するボタンを作成しました。 同じボタンの2回目のクリックでこのCSSをヘッダーから削除できますか?Javascript - 1つのボタンでCSSファイルを追加して削除する

おかげ

<script> 
$(document).ready(function(){ 
    $("#myButton").click(function(){ 
    var ls = document.createElement('link'); 
    ls.rel="stylesheet"; 
    ls.href="myCSSfile.css"; 
    document.getElementsByTagName('head')[0].appendChild(ls); 
    }); 

}); 
</script> 


<button id="myButton">Add/Remove</button> 
+0

可能な繰り返し:このコードは、あなたが含まcssファイル、特別id属性を使用してリンクタグを特定する必要はありませんに基づいてlinkタグを識別するのに役立ちます/ 3182840/remove-or-replaced-a-stylesheet-a-link-with-javascript-jquery –

答えて

4

ちょうどスタイルのタグを識別するために何かを追加し、IDはあなたにもこれを行うことができます上記の回答に加えて、適切な

$(document).ready(function(){ 
    $("#myButton").on('click', function(){ 

     if ($('#myStyle').length === 0) { // does not yet exist 

      $('<link />', { 
       id : 'myStyle', 
       rel : 'stylesheet', 
       href : 'myCSSfile.css'; 
      }).appendTo('head'); 

     } else { // exists, remove it 

      $('#myStyle').remove(); 

     } 
    }); 
}); 
+0

ありがとう!作品! 私の最終的なコード:

1

です。 - http://stackoverflow.com/questions

<script> 
$(document).ready(function(){ 
    $("#myButton").click(function(){ 


     if($("link[href*=myCSSfile]").length){ 
      $("link[href*=myCSSfile]").remove(); 
     } 
     else{ 
      var ls = document.createElement('link'); 
      ls.rel="stylesheet"; 
      ls.href="myCSSfile.css"; 
      document.getElementsByTagName('head')[0].appendChild(ls); 
     } 
    }); 

}); 
</script> 


<button id="myButton">Add/Remove</button> 
関連する問題