Du kan gøre det på et par måder:
- Brug javascript til at ændre input-type attributten, det driller vidst med IE
- Brug javascript til at oprette et nyt password felt, der erstatter tekst feltet. IE driller med at give det nye felt focus, kan sikkert sagtens lade sig gøre.
Men istedet for at, erstatte feltet eller ændre det - så kunne du overveje om løsningen er, at have 2 felter. Hvoraf kun et er synligt af gangen.
Her er et knap så pænt udkast til en løsning.
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <title>Untitled Document</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta http-equiv="Content-Style-Type" content="text/css">
- <meta http-equiv="Content-Script-Type" content="txt/javascript">
- <script language=javascript type='text/javascript'>
- function hidediv(pass) {
- var divs = document.getElementsByTagName('div');
- for(i=0;i<divs.length;i++){
- if(divs[i].id.match(pass)){//if they are 'see' divs
- if (document.getElementById) // DOM3 = IE5, NS6
- divs[i].style.visibility="hidden";// show/hide
- else
- if (document.layers) // Netscape 4
- document.layers[divs[i]].display = 'hidden';
- else // IE 4
- document.all.hideShow.divs[i].visibility = 'hidden';
- }
- }
- }
-
- function showdiv(pass) {
- var divs = document.getElementsByTagName('div');
- for(i=0;i<divs.length;i++){
- if(divs[i].id.match(pass)){
- if (document.getElementById)
- divs[i].style.visibility="visible";
- else
- if (document.layers) // Netscape 4
- document.layers[divs[i]].display = 'visible';
- else // IE 4
- document.all.hideShow.divs[i].visibility = 'visible';
- }
- }
- }
- </script>
-
-
- </head>
- <form>
- <div id="txt">
- <input type="text" name="passwordPlaceholder" value="Password" onfocus="hidediv('txt');showdiv
-
- ('psw');password.setFocus();">
- </div>
- <div id="psw" style="visibility: hidden;">
- <input type="text" name="password" value="Password" onfocus="replaceT(this)">
- </div>
- </form>
- </body>
- </html>
Det virker desværre ikke, min hjemmeside gider ikke blive viste..