2016-09-06 10 views
-1

私は、クリックしたときにメニューを表示するボタンを持つWebサイトで作業しています。アクティブなときに色を変更しようとしていますが、ボタンをクリックしたときに背景色を変更していません。ここで私が使用しているコードです。あなたがCSSで自分のコードに入力するようjQuery toggleClassが機能しない

$(".services-btn").click(function() { 
 
    $(this).toggleClass("active-btn"); 
 
});
div.services-btn { 
 
    background-color: black; 
 
    color: #f9f9f9; 
 
    cursor: pointer; 
 
    float: left; 
 
    margin: 10px; 
 
    padding: 15px 0; 
 
    text-align: center; 
 
    width: 80px; 
 
} 
 
.active-btn { 
 
    background-color: darkred; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="services-btn mobile">Services</div>

+0

'active-btn'はクラスですか? CSSには '.active-btn'のルールがあります。 – Li357

+1

スタイルを持たないクラスを切り替えるので、アクティブでないことがアクティブでなければなりません – guradio

答えて

0

はない.active-btn、なぜならあなたのjQueryでこの

div.services-btn { 
    background-color: black; 
    color: #f9f9f9; 
    cursor: pointer; 
    float: left; 
    margin: 10px; 
    padding: 15px 0; 
    text-align: center; 
    width: 80px; 
} 

div.services-btn.active { 
    background-color: darkred; 
} 

それにアドイン.activeクラスをあなたのCSSを変更します。 jQueryのクラスを.active-btnに変更することもできますし、CSSも変更しないでください。正しく動作します。

+0

申し訳ありませんが、私は質問を入力したときに変更するつもりでした。現在 '$(this).toggleClass(" active-btn ");'に設定されていますが、それでも動作しません。 –

+1

あなたはフィドルを置くことができますか? –

+0

私はそれを共有する方法はわかりませんが、タイトルの下にあります。 "jQuery toggleClass StackOverflow" –

0

.service-btnクラスをアクティブにし、cssを使用してアクティブなクラスのスタイリングを行います。

.services-btn { 
    background-color: black; 
    color: #f9f9f9; 
    cursor: pointer; 
    float: left; 
    margin: 10px; 
    padding: 15px 0; 
    text-align: center; 
    width: 80px; 
} 

.services-btn.active { 
    background-color: darkred; 
} 

jqueryが悪いです。 $(this.toggleClass("active-btn")は、メニューなど、切り替える必要があります。

関連する問題