2015-09-27 159 views
0

這是令人沮喪的,我無法弄清楚這一點。 當用戶點擊鏈接「主題」時,我只需要爲整個機構更改/切換回前景色 。 以下是我的html文件。jQuery改變身體的背景顏色

... 
<style> 
    highlight { 
     background-color: black; 
     color: white; 
    } 
</style> 
<script> 
    $(document).ready(function() { 
     $('.theme').on('click', function() { 
      $(document.body).toggleClass("highlight"); 
      //$(document.body).css({"background-color": "black"}); 
     }); 
    }); 
</script> 

當我使用$()。CSS({...}),它的工作原理,但是當我嘗試使用 類能夠切換,事實並非如此。請幫忙。

+2

''.highlight類Missng'.'在'風格tag' – Rayon

+0

試圖用或不用。不工作。當我通過Chrome的開發人員工具看到事物時,它似乎將它粘貼到body元素上,並在再次單擊時將其取下。 – Mike

+0

我嘗試過或沒有嘗試過,但現在它沒有工作。這有點奇怪。它現在有效。謝謝。 – Mike

回答

1

同意人造絲。如果缺少前面的時期,那麼風格中的「突出」不是一個階級。 jQuery無法切換「高亮」類,因爲沒有「高亮」類可以切換。代碼工作在這裏:http://liveweave.com/T6c7Mz

+0

只是在側面說明...這是正確的? toggleClass(「。highlight」)或toggleClass(「highlight」)? – Mike

+0

@Mike,'toggleClass(「highlight」)'是正確的語法.. – Rayon

1

變化以下行

$(document.body).toggleClass("highlight"); 

$("body").toggleClass("highlight"); 
+0

沒有工作。但它會將其粘貼到身體元素上。 – Mike

1

這將工作

HTML

<a href="#" id="theme">Click Me</a>

CSS

body { background-color:red; } 
.highlight 
{ 
    background-color:yellow; 
} 

JQUERY

$("#theme").click(function() { 
$("body").toggleClass("highlight"); 

});

這裏是工作的代碼 http://jsfiddle.net/CLwE5/119/