input 輸入框獲得/失去焦點時隱藏/顯示文字(jquery版)
輸入框默認狀態(tài):

輸入框獲取焦點狀態(tài):

大家可以看效果圖的搜索輸入框,默認顯示著“用戶名/Email”的提示,當(dāng)這個 input 輸入框獲得焦點時,就自動清空等待用戶輸入,當(dāng)用戶啥也沒輸入就離開這個 input 輸入框時,輸入框內(nèi)又再次顯示“用戶名/Email”的提示。是不是很常見?很多搜索、登錄、表單都會用到這個效果,但是我看了N多個網(wǎng)站,有90%以上是這么實現(xiàn)的:
<input type="text" value="搜索關(guān)鍵字" onfocus="if(this.value == '搜索關(guān)鍵字') this.value = ''" onblur="if(this.value =='') this.value = '搜索關(guān)鍵字'" />
我是非常反對把 javascript 寫在 html 標(biāo)簽里的,這和 style 寫在 html 標(biāo)簽里一樣,雖然不違反 W3C 標(biāo)準,但也不推薦這么寫。因為:
1.完全沒有復(fù)用性可言,如果是個表單,輸入框很多,每個都需要這樣的效果,那就每個都這么處理嗎?
2.如果要修改其中的提示文字,費時費力又不好維護。
3.我們倡導(dǎo)結(jié)構(gòu)(html)、表現(xiàn)(css)、行為(javascript)三者分離,這才是一個好的頁面。
那要怎么寫才能實現(xiàn)這個效果,而且既有復(fù)用性,又好維護,又不需要把 js 寫進 html 里呢?
具體方法如下:
首先肯定是引入jQuery
Html代碼:
<div><input type="text" value="提示測試" class="input_test" /></div>
<div><input type="text" value="請輸入搜索關(guān)鍵" class="input_test" /></div>
jQuery代碼:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$('.input_test').bind({
focus:function(){
if (this.value == this.defaultValue){
this.value="";
}
},
blur:function(){
if (this.value == ""){
this.value = this.defaultValue;
}
}
});
})
</script>
只要在實現(xiàn)的input輸入框加上”input_test”這個class就可以輕松實現(xiàn)了
查看:Demo
相關(guān)文章
jQuery插件FusionWidgets實現(xiàn)的Cylinder圖效果示例【附demo源碼】
這篇文章主要介紹了jQuery插件FusionWidgets實現(xiàn)的Cylinder圖效果,結(jié)合實例形式分析了jQuery使用FusionWidgets結(jié)合swf文件讀取xml數(shù)據(jù)并采用Cylinder圖展示的相關(guān)實現(xiàn)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03jQuery實現(xiàn)可以編輯的表格實例詳解【附demo源碼下載】
這篇文章主要介紹了jQuery實現(xiàn)可以編輯的表格,涉及jQuery響應(yīng)鼠標(biāo)事件動態(tài)操作頁面元素的相關(guān)技巧,需要的朋友可以參考下2016-07-07jQuery實現(xiàn)動態(tài)生成年月日級聯(lián)下拉列表示例
這篇文章主要介紹了jQuery實現(xiàn)動態(tài)生成年月日級聯(lián)下拉列表,結(jié)合具體實例形式分析了jQuery日期時間運算構(gòu)造級聯(lián)下拉列表相關(guān)操作技巧,需要的朋友可以參考下2019-05-05jQuery 1.3 和 Validation 驗證插件1.5.1
jQuery 1.3已經(jīng)新鮮出爐了,你可以通過jQuery 的官方博客查看相關(guān)細節(jié)。jQuery三歲了!2009-07-07jQuery插件ImageDrawer.js實現(xiàn)動態(tài)繪制圖片動畫(附源碼下載)
ImageDrawer.js是一款可以實現(xiàn)動態(tài)繪制圖片動畫的jQuery插件,接下來通過本文給大家介紹jQuery插件ImageDrawer.js實現(xiàn)動態(tài)繪制圖片動畫(附源碼下載),需要的朋友參考下2016-02-02jQuery向上遍歷DOM樹之parents(),parent(),closest()之間的區(qū)別
這篇文章主要是對jQuery向上遍歷DOM樹之parents(),parent(),closest()之間的區(qū)別進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12在easyUI開發(fā)中,出現(xiàn)jquery.easyui.min.js函數(shù)庫問題的解決辦法
easyUI是jquery的一個插件,是民間的插件,easyUI使用起來很方便,里面有網(wǎng)頁制作的最重要的三大方塊:javascript代碼、html代碼和Css樣式,但是很容易出現(xiàn)jquery.easyui.min.js函數(shù)庫問題,小編教大家如何解決問題,需要的朋友可以參考下2015-09-09分享有關(guān)jQuery中animate、slide、fade等動畫的連續(xù)觸發(fā)、滯后反復(fù)執(zhí)行的bug
這篇文章主要介紹了分享有關(guān)jQuery中animate、slide、fade等動畫的連續(xù)觸發(fā)、滯后反復(fù)執(zhí)行的bug的相關(guān)資料,需要的朋友可以參考下2016-01-01