Hallo hallo.
Für mein neues Projekt habe ich einen Colorchanger geschrieben,
Nur leider habe ich ein Problem.. Sobald ich eine Farbe im Header angeklickt hab, passiert nichts. Erst dann, wenn ich die Seite neulade ändert sich die Farbe am Header.
Ich hätte es lieber wenn die Farbe sich ändert ohne dass ich die Seite neuladen muss..
JavaScript
JavaScript
function changecolor(name)
{
$.post("./classes/cs/update.php", {name: name});
$("header").removeClass();
$("header").addClass(name);
}
CSS
CSS
<style type="text/css">
header{
<?php if($_SESSION['isbg'] !== "0"){ ?>
background: url('<?php echo getBG($_SESSION['bg']); ?>');
<?php } else { ?>
background-color: <?php echo getColor($_SESSION['color']); ?>;
<?php } ?>
}
header #content .left #colorswitcher .blue{
background-color: <?php echo getColor('blue'); ?>;
}
header #content .left #colorswitcher .green{
background-color: <?php echo getColor('green'); ?>;
}
header #content .left #colorswitcher .yellow{
background-color: <?php echo getColor('yellow'); ?>;
}
header #content .left #colorswitcher .orange{
background-color: <?php echo getColor('orange'); ?>;
}
</style>
Alles anzeigen
Colorchanger
PHP
function getColor($name)
{
$name = $name;
switch($name)
{
case 'green':
$color = '#3a9447';
break;
case 'yellow':
$color = '#94773a';
break;
case 'blue':
default:
$color = '#3a7994';
break;
case 'orange':
$color = '#944f3a';
break;
}
return $color;
}
Alles anzeigen
Update
PHP
session_start();
if($_POST['bg'] == "1")
{
$_SESSION['isbg'] = "1";
$_SESSION['bg'] = $_POST['name'];
} else {
$_SESSION['isbg'] = "0";
$_SESSION['color'] = $_POST['name'];
}
Alles anzeigen
HTML
HTML
<div id="colorswitcher">
<div class="blue" onClick="changecolor('blue')"></div>
<div class="green" onClick="changecolor('green')"></div>
<div class="orange" onClick="changecolor('orange')"></div>
<div class="yellow" onClick="changecolor('yellow')"></div>
</div>
Ich bedanke ich schon einmal im voraus.
bb, Donald.