javascript自動(dòng)恢復(fù)文本框點(diǎn)擊清除后的默認(rèn)文本
本文實(shí)例介紹了點(diǎn)擊文本框清除默認(rèn)文本離開(kāi)再恢復(fù)的js實(shí)例代碼,分享給大家供大家參考,具體內(nèi)容如下
相關(guān)知識(shí):
1、onclick事件的定義和用法:
當(dāng)點(diǎn)擊對(duì)象的時(shí)候會(huì)觸發(fā)此事件。
瀏覽器支持:
1)、IE瀏覽器支持此事件。
2)、火狐瀏覽器支持此事件。
3)、Opera瀏覽器支持此事件。
4)、谷歌瀏覽器支持此事件。
5)、safria瀏覽器支持此事件。
實(shí)例代碼:
<html> <head> <meta charset="gb2312"/> <title>腳本之家</title> <style type="text/css"> div{ width:100px; height:100px; background-color:red; } </style> <script type="text/javascript"> window.onload=function(){ var mydiv=document.getElementById("mydiv"); mydiv.onclick=function(){ mydiv.style.backgroundColor="green"; } } </script> </head> <body> <div id="mydiv"></div> </body> </html>
以上代碼為div注冊(cè)onclick事件處理函數(shù),當(dāng)點(diǎn)擊div的時(shí)候就會(huì)執(zhí)行此處理函數(shù)將div的背景顏色設(shè)置為綠色。
2、onblur事件的定義和用法:
當(dāng)指定對(duì)象失去焦點(diǎn)時(shí)就會(huì)觸發(fā)此事件。
實(shí)例代碼:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>腳本之家</title> <style type="text/css"> .mytest{ background-color:green; } </style> <script type="text/javascript"> window.onload=function(){ var username=document.getElementById("username"); username.focus(); username.onblur=function(){ username.style.backgroundColor="green"; } } </script> </head> <body> <input type="text" name="username" id="username" /> </body> </html>
以上代碼為input元素的onblur事件綁定事件處理函數(shù),當(dāng)input元素失去焦點(diǎn)的時(shí)候,能夠?qū)⒈尘邦伾O(shè)置為綠色。
接下來(lái)是重中之重:點(diǎn)擊文本框清除默認(rèn)文本離開(kāi)再恢復(fù)
很多網(wǎng)站的需要填寫(xiě)的文本框在默認(rèn)狀態(tài)下都會(huì)給出一個(gè)默認(rèn)的提示語(yǔ)言,當(dāng)鼠標(biāo)點(diǎn)擊此文本框的時(shí)候能夠?qū)⒗锩娴哪J(rèn)文本清除,當(dāng)刪除輸入的文本且焦點(diǎn)離開(kāi)文本框的時(shí)候再將默認(rèn)的文本寫(xiě)入文本框。
代碼如下:
<html> <head> <meta charset="gb2312"> <title>點(diǎn)擊文本框清除默認(rèn)值</title> <script type="text/javascript"> window.onload=function() { var username=document.getElementById("username"); username.onclick=function() { if(username.value=="請(qǐng)輸入您的姓名") { username.value=""; this.focus(); } } username.onblur=function() { if(username.value=="") { username.value="請(qǐng)輸入您的姓名"; } } } </script> </head> <body> <input type="text" value="請(qǐng)輸入您的姓名" id="username" /> </body> </html>
以上代碼實(shí)現(xiàn)了我們的要求,當(dāng)點(diǎn)擊文本框的時(shí)候能夠清除文本框中的內(nèi)容,如果文本框沒(méi)有輸入任何內(nèi)容,這個(gè)時(shí)候鼠標(biāo)焦點(diǎn)離開(kāi)文本框的時(shí)候,會(huì)將文本框的值恢復(fù)到默認(rèn)狀態(tài)。不過(guò)如果密碼框肯恩有點(diǎn)麻煩,因?yàn)槊艽a框并非顯示的明文,解決方案可以參考如何實(shí)現(xiàn)在密碼框如出現(xiàn)提示語(yǔ)下段內(nèi)容。
如何實(shí)現(xiàn)在密碼框如出現(xiàn)提示語(yǔ):
有時(shí)候我們需要在登陸表單有一些提示語(yǔ)言,比如“請(qǐng)輸入用戶(hù)民”和“請(qǐng)輸入密碼”等語(yǔ)言,至于用戶(hù)名好說(shuō),但是在密碼框中出現(xiàn)“請(qǐng)輸入密碼”這樣的語(yǔ)言就有點(diǎn)麻煩了,因?yàn)樵诿艽a框輸入的內(nèi)容不會(huì)以明碼顯示。如果動(dòng)態(tài)的控制type屬性的話(huà)就有兼容性問(wèn)題,如果input已經(jīng)存在于頁(yè)面中的話(huà),在IE8和IE8以下瀏覽器中,type屬性是只讀的。所以就得想其他辦法,代碼如下:
<html> <head> <meta charset="gb2312"> <title腳本之家</title> <style type="text/css"> #tx{ width:100px; } #pwd{ display:none; width:100px; } </style> <script type="text/javascript"> window.onload=function(){ var tx=document.getElementById("tx"); var pwd=document.getElementById("pwd"); tx.onfocus=function(){ if(this.value!="密碼") return; this.style.display="none"; pwd.style.display="block"; pwd.value=""; pwd.focus(); } pwd.onblur=function(){ if(this.value!=""){ return; } this.style.display="none"; tx.style.display=""; tx.value="密碼"; } } </script> </head> <body> <input type="text" value="密碼" id="tx"/> <input type="password" id="pwd" /> </body> </html>
以上代碼實(shí)現(xiàn)了我們的要求,可以出現(xiàn)明碼的提示,當(dāng)輸入密碼的時(shí)候就是以密碼方式輸入。
實(shí)現(xiàn)的原理非常的簡(jiǎn)單,在默認(rèn)狀態(tài)以type="text"文本框顯示,當(dāng)點(diǎn)擊文本框的時(shí)候,以type="password"密碼框顯示,原來(lái)顯示的文本框隱藏,也就是說(shuō)做了一個(gè)替換而已。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)javascript程序設(shè)計(jì)有所幫助。
相關(guān)文章
JS數(shù)據(jù)雙向綁定原理與用法實(shí)例分析
這篇文章主要介紹了JS數(shù)據(jù)雙向綁定原理與用法,結(jié)合實(shí)例形式分析了JavaScript數(shù)據(jù)雙向綁定相關(guān)原理、實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-11-11JavaScript中判斷變量是數(shù)組、函數(shù)或是對(duì)象類(lèi)型的方法
這篇文章主要介紹了JavaScript中判斷變量是數(shù)組、函數(shù)或是對(duì)象類(lèi)型的方法,需要的朋友可以參考下2015-02-02你應(yīng)該了解的JavaScript Array.map()五種用途小結(jié)
大家都知道m(xù)ap() 方法返回一個(gè)新數(shù)組,數(shù)組中的元素為原始數(shù)組元素調(diào)用函數(shù)處理后的值。下面這篇文章主要給大家介紹了關(guān)于JavaScript Array.map()的五種用途,需要的朋友可以參考下2018-11-11php+js實(shí)現(xiàn)倒計(jì)時(shí)功能
由PHP傳入JS處理的時(shí)間戳我說(shuō)怎么老是對(duì)不上號(hào)呢,原來(lái)JS時(shí)間戳為13位,包含3位毫秒的,而PHP只有10位不包含毫秒的。恩,基礎(chǔ)還是要補(bǔ)補(bǔ)的2014-06-06javascript 變速加數(shù)功能實(shí)現(xiàn)代碼
試想一下你要在你的網(wǎng)站提供如下這樣的功能:提供一個(gè)文本框用于收集用戶(hù)數(shù)據(jù),這個(gè)文本框只能接受整型的數(shù)值,不提供給用戶(hù)手工輸入,只提供兩個(gè)按鈕。2009-10-10js中encode、decode的應(yīng)用說(shuō)明
這里簡(jiǎn)單介紹下js中的encode、decode的字符2012-10-10微信小程序?qū)崿F(xiàn)點(diǎn)擊按鈕修改字體顏色功能【附demo源碼下載】
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)點(diǎn)擊按鈕修改字體顏色功能,涉及微信小程序wx:for循環(huán)讀取data數(shù)值及事件綁定修改元素屬性相關(guān)操作技巧,需要的朋友可以參考下2017-12-12JS限制Textarea文本域字符個(gè)數(shù)的具體實(shí)現(xiàn)
這篇文章介紹了JS限制Textarea文本域字符個(gè)數(shù)的具體實(shí)現(xiàn),有需要的朋友可以參考一下2013-08-08