Ik heb al gezocht via Google, maar ik kan er niet veel duidelijks over vinden.Het enige wat ik heb kunnen uitvinden is dat het om een heel klein stukjeJavascript en/of PHP gaat, die de tijd van je systeem inleest en de betreffendestylesheet laad.
Kan iemand me misschien een beetje op weg helpen met een linkje, stukjecode of iets dergelijks?
Mvg,Joram
Zelf kan ik zo'n javascriptje niet maken , maar je kan op sites als http://www.leejo.nl of http://www.javascriptzoeker.nl kijken.
Ik heb met je 2 links gezocht naar een Javascriptje waarmeeik 2 verschillende stylesheets op een eigen tijd kan inladengezocht, maar kon 'm helaas nog niet vinden. Als je nog meervan dit soort linkjes hebt: laat maar komen
Op javascriptzoeker zijn wel scriptjes die "Goedemorgen" e.d. zeggen. Misschien kan je zo'n scripje in je header plaatsen en dan de stylesheets laten veranderen, inplaats van die begroeting?
PS, die scriptjes staan onder "klokken".
<?php<p>$current_hour = date ("H");<p>if($current_hour<"12" and $current_hour>="05") {<br> echo "Goedemorgen";<br> }<p>if($current_hour<"18" and $current_hour>="12") {<br> echo "Goedemiddag";<br> }<p>if($current_hour>="18" and $current_hour<="23") {<br> echo "Goedenavond";<br> }<p>if($current_hour>="00" and $current_hour <"05") { <br> echo "Goedenacht";<br> } <p>?>
Greetz.
[EDIT] ik zit momenteel een beetje teveel op een hyper om zonder randschade mijn Systeemvoorkeuren in te gaan, laat de eer voor nu even over aan een ander. Wie kan zeggen of het werkt met AM/PM? [/EDIT](Bewerkt door Leendert om 21:59, 20-03-2008)
(Bewerkt door Leendert om 21:59, 20-03-2008)
Ik heb ondertussen ook even verder gekeken, en van wat ik weet hebje dan inderdaad Javascript nodig.
Het is eigenlijk zoiets als dit:http://test.unintentionallyblank.co.uk/switcher.htmlMaar dan in plaats van een link een systeem wat de tijd opzoekt.Van wat ik weet kan PHP dat alleen van je eigen server halen, en nietdirect van de bezoekers lokale tijd toch?
p.s.: als ik m'n eigen tijd op AM/PM zet werkt je linkje zo te zien ook nog,maar dat kan ook komen omdat ik ook in Nederland zit
(Bewerkt door joram om 21:50, 20-03-2008)
Met
var date = new Date();var hh = date.getHours();
iets als
if(hh > 8 && hh <= 18) {overdagstyle} else {nachtstyle}
(nieuwe style laden moet je ff opzoeken...)
Via de links die in dit draadje gegeven waren en degene die ik viaGoogle heb gevonden heb ik ook niets gevonden wat ik zoals bijvoorbeeld Mootools of jQuery kan gebruiken. Dus als het warelinken en klaar. En da's ook een beetje 't probleem; zodra ik datalleen hoef te linken aan een stylesheet kom ik er wel uit. Maar 'tis echt het Javascript zelf waar ik geen kaas van heb gegeten (ophier en daar de tijdsduur aanpassen e.d.)
http://www.katgal.com/2007/03/time-sensitive-css-switcher-change.html
joram om 13:12, 21-03-2008Nee helaas Da's ook meer naar de servertijd, en niet lokaal.Ik bedoel eigenlijk meer zoiets: http://www.mariusroosendaal.com/
? Volgens mij gebruikt dat voorbeeld Javascript. Dan is het niet de servertijd, maar de lokale tijd!
Javascript is clientside, en zal dus de lokale tijd van de bezoeker gebruiken. NIET de servertijd (zoals PHP).
<script language="javascript">day = new Date() x = day.getHours()if (x>=0 && x<6) {document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/nacht_css.css" />')} elseif (x>=6 && x<11) {document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/ochtend_css.css" />')} elseif (x>=11 && x<19) {document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/middag_css.css" />')} elseif (x>=19 && x<22) {document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/avond_css.css" />') } elseif (x>=22 && x<24) {document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/nacht_css.css" />')}</script>
<script language="javascript"> day = new Date() x = day.getHours() if (x>=18 && x<6) { document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/nacht_css.css" />') } else if (x>=6 && x<18) { document.write ('<link rel="stylesheet" type="text/css" media="screen" href="/pivot/templates/css/dag_css.css" />') }</script>
Goh, dat zoiets nog zo lastig te vinden is zeg, hehe :D
Wat me alleen niet duidelijk is, waarom dit maar zo'n klein stukje codeis, terwijl de site van Marius Roosendaal zo'n lap Javascript heeft gebruiktom hetzelfde te gebruiken: hij heeft buiten de 3 stylesheet keuzes dieeen gebruiker kan maken, ook een tijd-gevoelige stylesheet lader,maar hij heeft een A4'tje vol met code alleen om die stylesheets teladen: check
(Bewerkt door joram om 16:51, 21-03-2008)
(Bewerkt door mk om 17:03, 21-03-2008)
Ik heb ondertussen ook een linkje naar Alistapart gevonden voor hethandmatig switchen tussen stylesheets: http://www.alistapart.com/articles/alternate/
Maar als ik dus jullie voorbeeld gebruik (mijn aangepaste stukje Javascript)dan zou ik dus een site hebben die zichzelf automatisch als dag of nacht laatzien afhankelijk van de lokale tijd... hoe werkt dat eigenlijk met extra pagina's?Onthoudt "de site" deze instelling in een cookie of moet ik deze functie per pagina opnieuw instellen ofzo?
Dus bijvoorbeeld;- Standaard staat style-main aan, want het is 13.00 in de middag- De bezoeker kiest voor style-alt-1 op de homepage.- Op de portfoliopagina schiet style-main weer aan, want dat is de default stylesheet.
En dat zou ik dan willen voorkomen. De keuze die de bezoeker kiestzou dan moeten worden opgeslagen in een cookie (denk ik), met deoptie om terug te gaan naar de tijdsgevoelige stylesheets
Hehe, 't wordt wel technisch allemaal zeg :D
<?php<p>if ($_GET['stylesheet'] == "dag") {<p>setcookie("stylesheet", "dag", time()+86400);header("Location: $_GET['url-van']");<p>} elseif ($_GET['stylesheet'] == "nacht") {<p>setcookie("stylesheet", "nacht", time()+86400);header("Location: $_GET['url-van']");} elseif ($_GET['stylesheet'] == "automatisch") {if(isset($_COOKIE['stylesheet'])) { // verwijder het cookie setcookie("stylesheet", "", time()-3600); }}?>
<?php<p>if(isset($_COOKIE['stylesheet'])) { $cookie = $_COOKIE['stylesheet'];<p>if ($cookie == "dag") {print "<link rel="stylesheet" type="text/css" media="screen" href="stylesheet-dag" />";} elseif ($cookie == "nacht") {print "<link rel="stylesheet" type="text/css" media="screen" href="stylesheet-nacht" />";}<p><p>} else { // Cookie bestaat niet, dus hier je JavaScriptje voor het controleren van de dag.}?>
<a href="cookie-maken.php?stylesheet=dag&url-van=DE URL VAN DE PAGINA WAARVAN JE LINKT>Dag stylesheet!</a><a href="cookie-maken.php?stylesheet=nacht&url-van=DE URL VAN DE PAGINA WAARVAN JE LINKT>Nacht stylesheet!</a><a href="cookie-maken.php?stylesheet=automatisch&url-van=DE URL VAN DE PAGINA WAARVAN JE LINKT>Automatisch stylesheet!</a>