jQuery實(shí)現(xiàn)IE輸入框完成placeholder標(biāo)簽功能的方法
本文實(shí)例講述了jQuery實(shí)現(xiàn)IE輸入框完成placeholder標(biāo)簽功能的方法。分享給大家供大家參考,具體如下:
如果在輸入框加上placeholder="xx"屬性,例如:
<input type="text" placeholder="請(qǐng)輸入關(guān)鍵詞"/>
則可以在谷歌瀏覽器等高級(jí)瀏覽器的輸入框中實(shí)現(xiàn)替換文本的功能,也就是得到如下圖所示的對(duì)話框:

但是這個(gè)屬性在WIN7默認(rèn)的瀏覽器IE8中無法兼容,更不要說IE6了。也就是說IE里面不支持placeholder這個(gè)標(biāo)簽。
不信的話,大可以把這段代碼拉到IE8里面運(yùn)行下試試,你只不過是得到一個(gè)空的對(duì)話框
在IE里面要實(shí)現(xiàn)這個(gè)要用組件失去焦點(diǎn)blur與得到焦點(diǎn)focus里面做,詳細(xì)可以參考《JavaScript組件焦點(diǎn)與頁內(nèi)錨點(diǎn)間傳值的方法》
其實(shí)可以完全不用jQuery,這里使用這是為了復(fù)習(xí)下《jQuery通過控制節(jié)點(diǎn)實(shí)現(xiàn)僅在前臺(tái)通過get方法完成參數(shù)傳遞》
思想很簡(jiǎn)單,一開始這個(gè)文本框默認(rèn)為#cccccc灰色字體,值為“請(qǐng)輸入關(guān)鍵詞”,當(dāng)?shù)玫浇裹c(diǎn)之后,把它的顏色設(shè)置為#000000黑色,值為空,一旦其失去焦點(diǎn),如果值為空,馬上把其恢復(fù)默認(rèn)的#cccccc灰色字體,值為“請(qǐng)輸入關(guān)鍵詞”
代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>搜索輸入框替換文本</title>
<script type="text/javascript" src="js/jquery-1.11.1.js"></script>
</head>
<body>
<form id="test">
<input id="searchKeyword" type="text" maxlength="30" value="請(qǐng)輸入關(guān)鍵詞" style="color:#cccccc" />
</form>
</body>
</html>
<script type="text/javascript">
$(document).ready(function(){
var isthisnull = true ;
$("#searchKeyword").focus(function(){
if ($(this).val() == "請(qǐng)輸入關(guān)鍵詞" && isthisnull) {
$(this).val("");
$(this).attr("style","color:#000000");
isthisnull = false;
}
});
$("#searchKeyword").blur(function(){
if ($(this).val() == "") {
$(this).val("請(qǐng)輸入關(guān)鍵詞");
$(this).attr("style","color:#cccccc");
isthisnull = true;
}
});
});
</script>
這里注意的是,是加入一個(gè)isthisnull的布爾值來判斷其是否為空,是為了判斷用戶是否要輸入“請(qǐng)輸入關(guān)鍵詞”,
不能認(rèn)為文本框里面有“請(qǐng)輸入關(guān)鍵詞”就是空,如果用戶自己輸入“請(qǐng)輸入關(guān)鍵詞”呢?
這里也不應(yīng)該用jquery或者javascript來取color或者style的值是否為"#cccccc"或者“color:#cccccc”來判斷,因?yàn)橥ㄟ^$(this).css("color")來取color,在不瀏覽器輸出的結(jié)果是不一樣的,而取style的話,ie會(huì)認(rèn)為這是一個(gè)object,而不是字符串
設(shè)置一個(gè)isthisnull,也可以為后面進(jìn)一步的表單驗(yàn)證做準(zhǔn)備
最終在IE中得到如下效果:

更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery頁面元素操作技巧匯總》、《jquery選擇器用法總結(jié)》、《jQuery表單操作總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jQuery擴(kuò)展技巧總結(jié)》及《jQuery常見經(jīng)典特效匯總》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
相關(guān)文章
jquery通過load獲取文件的內(nèi)容并跳到錨點(diǎn)的方法
這篇文章主要介紹了jquery通過load獲取文件的內(nèi)容并跳到錨點(diǎn)的方法,涉及l(fā)oad及animate等方法的使用技巧,需要的朋友可以參考下2015-01-01
jQuery使用正則表達(dá)式替換dom元素標(biāo)簽用法示例
這篇文章主要介紹了jQuery使用正則表達(dá)式替換dom元素標(biāo)簽的方法,結(jié)合具體實(shí)例形式分析了jQuery正則替換的操作技巧,需要的朋友可以參考下2017-01-01
jQGrid動(dòng)態(tài)填充select下拉框的選項(xiàng)值(動(dòng)態(tài)填充)
這篇文章主要介紹了jQGrid動(dòng)態(tài)填充select下拉框的選項(xiàng)值(動(dòng)態(tài)填充)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11
jQuery清除定時(shí)任務(wù)的實(shí)現(xiàn)
jQuery中使用setInterval函數(shù)設(shè)置定時(shí)任務(wù),并通過clearInterval函數(shù)來清除這些任務(wù),從而避免資源浪費(fèi)或邏輯混亂,具有一定的參考價(jià)值,感興趣的可以了解一下2024-09-09
jQuery中常用動(dòng)畫效果函數(shù)知識(shí)點(diǎn)整理
這篇文章我們給大家整理了關(guān)于jQuery中常用動(dòng)畫效果函數(shù)的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友可以學(xué)習(xí)下。2018-08-08
jQuery使用zTree插件實(shí)現(xiàn)樹形菜單和異步加載
這篇文章主要介紹了jQuery使用zTree插件實(shí)現(xiàn)樹形菜單和異步加載的相關(guān)方法,感興趣的小伙伴們可以參考一下2016-02-02
jQuery實(shí)現(xiàn)導(dǎo)航滾動(dòng)到指定內(nèi)容效果完整實(shí)例【附demo源碼下載】
這篇文章主要介紹了jQuery實(shí)現(xiàn)導(dǎo)航滾動(dòng)到指定內(nèi)容效果,結(jié)合完整實(shí)例形式分析了頁面元素屬性動(dòng)態(tài)變換操作相關(guān)技巧,涉及jQuery插件jquery.scrollto.js的使用,并附帶demo源碼下載供讀者下載參考,需要的朋友可以參考下2016-09-09
純JAVASCRIPT圖表動(dòng)畫插件Highcharts Examples
官方提供免費(fèi)的下載包以及詳細(xì)的文檔說明,非常的值得收藏。2011-04-04

