2017-08-09 256 views
-1

當按鈕被點擊時,我想改變按鈕「遊戲添加」的背景顏色。當在疊加中點擊「X」時,我想要將它改回原來的顏色。這是我的代碼更改背景顏色的按鈕點擊

$('.game-add').click(function() { 
 
    $(".game-add").css("background-color","5da93c"); 
 
    $('#overlay').toggleClass('active'); 
 
// calcs bottom of button 
 
    var bottom = $(this).position().top + $(this).outerHeight(true); 
 
    $('#overlay').css({ 
 
    'top': bottom + 'px', 
 
    }); 
 
}); 
 

 
$('#close').click(function(){ 
 
    $(".game-add").css("background-color","1D1D1D"); 
 
    $('#overlay').removeClass('active'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button type="button" class="btn btn-link game-add">ADD GAME</button> 
 
<div id="overlay"> 
 
    <a href="#" id="close" class="pull-right" style="color: #fff;">X</a> 
 
    <h2>This is an overlay</h2> 
 
</div>

任何幫助將大大讚賞。謝謝

+0

你能告訴我們目前的問題是什麼? – urielSilva

+0

根本不會改變顏色 –

回答

4

您忘記了#散列/ numbersign,因此無法識別顏色。

// Code above 
$('.game-add').click(function() { 
    $(this).css("background-color","#5da93c"); 
    $('#overlay').toggleClass('active'); 
// The rest of the code 
+3

#= hash£=磅。對不起,你過去受過錯誤的教育。 – Jamiec

+0

@Jamiec#也被稱爲英鎊符號或美式英語中的數字符號,用於前綴權重或數字, https://en.wikipedia.org/wiki/Number_sign –

+0

是的,我知道。美國人對哈希和英鎊之間的差異進行了錯誤的教育,這在評論中頗有微詞。 Did not mean any any offty :) +1爲正確的答案。 – Jamiec

1

你忘記了以前的#十六進制值。這些線路

$(".game-add").css("background-color","5da93c"); 
$(".game-add").css("background-color","1D1D1D"); 

更改爲

$(".game-add").css("background-color","#5da93c"); 
$(".game-add").css("background-color","#1D1D1D"); 

後給我的buttona,當點擊其中的顏色發生變化的結果。

1

正如在另一個答覆中提到你可以使用this到位重複slector .game-add - 但不是修復該問題。

你忘記了在css中有十六進制顏色的#符號。

$('.game-add').click(function() { 
 
    $(this).css("background-color","#5da93c"); 
 
    $('#overlay').toggleClass('active'); 
 
// calcs bottom of button 
 
    var bottom = $(this).position().top + $(this).outerHeight(true); 
 
    $('#overlay').css({ 
 
    'top': bottom + 'px', 
 
    }); 
 
}); 
 

 
$('#close').click(function(){ 
 
    $(".game-add").css("background-color","#1D1D1D"); 
 
    $('#overlay').removeClass('active'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button type="button" class="btn btn-link game-add">ADD GAME</button> 
 
<div id="overlay"> 
 
    <a href="#" id="close" class="pull-right" style="color: #fff;">X</a> 
 
    <h2>This is an overlay</h2> 
 
</div>

1

增加了一些變化

$("#close").css("background-color","#d1a0a0"); 
// needed the `#` infront of color 

$('.game-add').click(function(){ 

$('.game-add').click(function(){ 

$('.game-add').click(function() { 
 
    $(".game-add").css("background-color","5da93c"); 
 
    $('#overlay').toggleClass('active'); 
 
// calcs bottom of button 
 
    var bottom = $(this).position().top + $(this).outerHeight(true); 
 
    $('#overlay').css({ 
 
    'top': bottom + 'px', 
 
    }); 
 
}); 
 

 
$('.game-add').click(function(){ 
 
    $(".game-add").css("background-color","#d1a0a0"); 
 
    $('#overlay').removeClass('active'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button type="button" class="btn btn-link game-add">ADD GAME</button> 
 
<div id="overlay"> 
 
    <a href="#" id="close" class="pull-right" style="color: #fff;">X</a> 
 
    <h2>This is an overlay</h2> 
 
</div>

2

這裏試試這個添加類和刪除jQuery的類方法

最前一頁的所有創建一類具有背景色

<style> 
    .btncolor{ 
     background-color:red; 
    } 
</style> 

然後只是一些細微的變化您的腳本

 <script> 
$('.game-add').click(function() { 
     $(this).addClass("btncolor"); // here 'btncolor' Class Will be added On click 
     $('#overlay').toggleClass('active'); 
    // calcs bottom of button 
     var bottom = $(this).position().top + $(this).outerHeight(true); 
     $('#overlay').css({ 
     'top': bottom + 'px', 
     }); 
    }); 

    $('#close').click(function(){ 
     $(".game-add").removeClass("btncolor"); //Here Class Will be removed on click from Button 
     $('#overlay').removeClass('active'); 
    }); 
</script> 
0

您可能沒有檢查過您的控制檯,但有錯誤Uncaught ReferenceError: $ is not defined

要擺脫這個錯誤,只需在頭部包含jquery庫路徑,你就可以走了。例如<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>。我測試了這個,它工作!