Hi!
Nachdem ich definitiv kein JavaScript King bin, kann ich auch nicht abschätzen, ob das ein Webkit Bug ist. Was auch nicht wirklich wichtig ist, nur, was muss man ändern, um in jedem Browser eine einwandfreie Funktion zu bekommen?
Dazu musst du, wie ChrisB schon sagte, Debugging betreiben, um erst einmal zu ermitteln, ws die Ursache ist. Im einfachsten Fall verfolgt man die zu verarbeitenden Werte mit Kontrollausgaben. Also kontrolliere mit ein paar alert()s, ob die Werte, die du da tatsächlich verarbeitest auch deinen Vorstellungen entsprechen.
Das ist das Problem - alle Werte sind absolut korrekt. Also auch Safari und Chrome geben bei den Alerts die korrekten Daten wieder. Nur das "Schreiben" des Cookies (setzen/löschen) macht der Browser nicht. Auslesen wie gesagt schon.
<textarea id="cValue" name="cValue" cols="50" rows="10" onChange="CheckLen(this)" onFocus="CheckLen(this)" onKeyDown="CheckLen(this)" onKeyUp="CheckLen(this)">Memos will be saved in your browser as cookies - with a lifetime of 12 month!</textarea></p>
<input type="button" onclick="javascript:saveCookie(document.forms[0].elements[0].value, document.forms[0].elements[1].value, 1000*60*60*24*365)" value="save memo" />1000 Jahre sind etwas mehr als 12 Monate.
Öh, sorry, das sind 1000 Millisekunden mal 60 Sek. mal ....
Außerdem ist das "javascript:" in den Eventhandlern unnötig, siehe bei der textarea, da hast du auch keine drin. Es wird nur bei Links im href-Attribut benötigt, aber auch da kann man stattdessen Eventhandler verwenden.
Korekt, da hab ich gepennt. Löst aber natürlich nicht das Problem.
Das Verflixte an diesem Problem ist ja, dass ich irgendwie keinen Grund für das Nichtfunktionieren in den Webkit Browsern finden kann. Wahrscheinlich brauche ich einen JavaScript König, der auf Mac zuhause ist. Nur kenne ich leider keinen.
Lo!
Verzweifelte Grüße
Sigi