Ich möchte die Hintergrundfarbe meiner body
durch Klicken ändern.
Dies ist mein Code, den ich ausprobiert habe, jede Hilfe wäre dankbar :)
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
$(document).ready(function(){
$(#foo).click(change() {
$(body).css("background-color":"blue");
});
});
CSS-Code
body
{
background-color:red;
}
Körpercode
<body>
<div id="foo" onclick="change()">
Hello
</div>
Sie verwenden einen Doppelpunkt anstelle eines Kommas. Versuchen:
$(body).css("background-color","blue");
Sie müssen auch die ID in Anführungszeichen einschließen, da sonst nach einer Variablen mit dem Namen #co
gesucht wird.
$("#co").click(change()
Hier gibt es viele weitere Probleme. click
ist kein HTML-Attribut. Sie möchten onclick
(was überflüssig ist). Versuche dies:
<div id="co"> <!-- no onclick method needed -->
<script>
$(document).ready(function() {
$("#co").click(function() {
$("body").css("background-color","blue"); //edit, body must be in quotes!
});
});
</script>
Sie haben versucht, eine undefinierte Methode aufzurufen. Wie es aussieht, haben Sie versucht, es in der Callback-Anweisung zu deklarieren? Ich bin mir nicht sicher. Vergleichen Sie dies jedoch mit Ihrem Code und sehen Sie die Unterschiede.
http://jsfiddle.net/CLwE5/ Demo Geige
Versuche dies
$("body").css({"background-color":"blue"});
$("#co").click(function(){
$(this).css({"backgroundColor" : "blue"});
});
Der folgende Code ändert das div in blau.
<script>
$(document).ready(function(){
$("#co").click({
$("body").css("background-color","blue");
});
});
</script>
<body>
<div id="co">hello</div>
</body>
1. Entfernen Sie die onclick
-Methode aus dem div
-Element
2.Entfernen Sie die Funktion change()
aus dem jQuery-Code und erstellen Sie stattdessen eine anonyme Funktion wie:
$(document).ready(function()
{
$('#co').click(function()
{
$('body').css('background-color','blue');
});
});
$("#bchange").click(function() {
$("body, this").css("background-color","yellow");
});