Есть несколько способов сделать это, но вот один из них.
Я не говорю, что это эффективно, но это лучше объяснит, что происходит.
Скопируйте и вставьте это, чтобы попробовать!
<body>
<script type="text/javascript">
text=document.createElement("input");
text.type="text";
text.value="password";
text.setAttribute("onclick", 'toPassword();');
text.setAttribute("onblur", 'toText();');
document.getElementsByTagName("body")[0].appendChild(text);
function toText()
{
if(document.getElementsByTagName("input")[0].value=="password" || document.getElementsByTagName("input")[0].value=="")
{
document.getElementsByTagName("input")[0].type="text";
document.getElementsByTagName("input")[0].value="password"
}
}
function toPassword()
{
if(document.getElementsByTagName("input")[0].value=="password" || document.getElementsByTagName("input")[0].value=="")
{
document.getElementsByTagName("input")[0].type="password";
document.getElementsByTagName("input")[0].value=""
}
}
</script>
</body>
Создает текстовое поле со значением password
, а затем, когда вы щелкаете по нему, изменяется на поле пароля и удаляет его значение. Если вы нажмете и ничего не введете, он вернется к text
и изменит его значение на password
.
Вы также можете ввести текстовое поле вместе с меньшим количеством кода JavaScript, все, что вам нужно, это функции.
Если вы хотите, чтобы это работало в IE, вам нужно создать два входа, один для текста и один для пароля и альтернативные display=none
и display=block
для каждого из них.
element.style.display="none";