Ich habe die gleiche Fehlermeldung erhalten, als ich versucht habe, dies in Firefox 5 zu tun.
Ich habe es mit dem folgenden Code gelöst:
<script type="text/javascript" language="JavaScript">
$(document).ready(function()
{
var passfield = document.getElementById('password_field_id');
passfield.type = 'text';
});
function focusCheckDefaultValue(field, type, defaultValue)
{
if (field.value == defaultValue)
{
field.value = '';
}
if (type == 'pass')
{
field.type = 'password';
}
}
function blurCheckDefaultValue(field, type, defaultValue)
{
if (field.value == '')
{
field.value = defaultValue;
}
if (type == 'pass' && field.value == defaultValue)
{
field.type = 'text';
}
else if (type == 'pass' && field.value != defaultValue)
{
field.type = 'password';
}
}
</script>
Um es zu verwenden, setzen Sie einfach die Attribute onFocus und onBlur Ihrer Felder auf etwa Folgendes:
<input type="text" value="Username" name="username" id="username"
onFocus="javascript:focusCheckDefaultValue(this, '', 'Username -OR- Email Address');"
onBlur="javascript:blurCheckDefaultValue(this, '', 'Username -OR- Email Address');">
<input type="password" value="Password" name="pass" id="pass"
onFocus="javascript:focusCheckDefaultValue(this, 'pass', 'Password');"
onBlur="javascript:blurCheckDefaultValue(this, 'pass', 'Password');">
Ich verwende dies auch für ein Benutzernamenfeld, sodass ein Standardwert umgeschaltet wird. Setzen Sie einfach den zweiten Parameter der Funktion auf '', wenn Sie sie aufrufen.
Es kann auch erwähnenswert sein, dass der Standardtyp meines Passwortfelds tatsächlich Passwort ist, nur für den Fall, dass ein Benutzer kein Javascript aktiviert hat oder wenn etwas schief geht, ist sein Passwort auf diese Weise weiterhin geschützt.
Die Funktion $ (document) .ready ist jQuery und wird geladen, wenn das Laden des Dokuments abgeschlossen ist. Dadurch wird das Kennwortfeld in ein Textfeld geändert. Natürlich müssen Sie 'password_field_id' in die ID Ihres Passwortfelds ändern.
Fühlen Sie sich frei, den Code zu verwenden und zu ändern!
Hoffe das hilft allen, die das gleiche Problem hatten wie ich :)
- CJ Kent
EDIT: Gute Lösung, aber nicht absolut. Funktioniert unter FF8 und IE8, jedoch nicht vollständig unter Chrome (16.0.912.75 ver). Chrome zeigt das Passwort nicht an beim der Seite nicht an. Außerdem - FF zeigt Ihr Passwort an, wenn das automatische Ausfüllen aktiviert ist.