本文主要和大家介紹jQuery實現IE輸入框完成placeholder標籤功能的方法,涉及jQuery事件響應及針對頁面元素屬性的動態操作相關實現技巧,需要的朋友可以參考下,希望能幫助到大家。
如果在輸入框加上placeholder="xx"屬性,例如:
<input type="text" placeholder="请输入关键词"/>
則可以在Google瀏覽器等進階瀏覽器的輸入框中實作替換文字的功能,也就是得到如下圖所示的對話框:
但是這個屬性在WIN7預設的瀏覽器IE8中無法相容,更不要說IE6了。也就是說IE裡面不支援placeholder這個標籤。
不信的話,大可以把這段程式碼拉到IE8裡面運行下試試,你只不過是得到一個空的對話框
在IE裡面要實現這個要用元件失去焦點blur與得到焦點focus裡面做,詳細可以參考《JavaScript組件焦點與頁內錨點間傳值的方法》
其實可以完全不用jQuery,這裡使用這是為了複習下《jQuery透過控制節點實現僅在前台通過get方法完成參數傳遞”
思想很簡單,一開始這個文本框默認為#cccccc灰色字體,值為“請輸入關鍵詞”,當得到焦點之後,把它的顏色設定為#000000黑色,值為空,一旦其失去焦點,如果值為空,馬上把其恢復預設的#cccccc灰色字體,值為「請輸入關鍵字」
代碼如下:
<!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="请输入关键词" style="color:#cccccc" /> </form> </body> </html> <script type="text/javascript"> $(document).ready(function(){ var isthisnull = true ; $("#searchKeyword").focus(function(){ if ($(this).val() == "请输入关键词" && isthisnull) { $(this).val(""); $(this).attr("style","color:#000000"); isthisnull = false; } }); $("#searchKeyword").blur(function(){ if ($(this).val() == "") { $(this).val("请输入关键词"); $(this).attr("style","color:#cccccc"); isthisnull = true; } }); }); </script>
這裡注意的是,是加入一個isthisnull的布林值來判斷其是否為空,是為了判斷使用者是否要輸入“請輸入關鍵字”,
不能認為文字方塊裡面有「請輸入關鍵字」就是空,如果使用者自己輸入「請輸入關鍵字」呢?
這裡也不應該用jquery或javascript來取color或style的值是否為"#cccccc"或「color:#cccccc」來判斷,因為透過$(this).css(" color")
來取color,在不瀏覽器輸出的結果是不一樣的,而取style的話,ie會認為這是一個object,而不是字串
設定一個isthisnull,也可以為後面進一步的表單驗證做準備
最終在IE中得到如下效果:
相關推薦:
React Native佔位placeholder的使用方法詳解
以上是jQuery實作IE輸入框完成placeholder標籤代碼分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JavaScript核心數據類型在瀏覽器和Node.js中一致,但處理方式和額外類型有所不同。 1)全局對像在瀏覽器中為window,在Node.js中為global。 2)Node.js獨有Buffer對象,用於處理二進制數據。 3)性能和時間處理在兩者間也有差異,需根據環境調整代碼。

JavaScriptusestwotypesofcomments:single-line(//)andmulti-line(//).1)Use//forquicknotesorsingle-lineexplanations.2)Use//forlongerexplanationsorcommentingoutblocksofcode.Commentsshouldexplainthe'why',notthe'what',andbeplacedabovetherelevantcodeforclari

Python和JavaScript的主要區別在於類型系統和應用場景。 1.Python使用動態類型,適合科學計算和數據分析。 2.JavaScript採用弱類型,廣泛用於前端和全棧開發。兩者在異步編程和性能優化上各有優勢,選擇時應根據項目需求決定。

選擇Python還是JavaScript取決於項目類型:1)數據科學和自動化任務選擇Python;2)前端和全棧開發選擇JavaScript。 Python因其在數據處理和自動化方面的強大庫而備受青睞,而JavaScript則因其在網頁交互和全棧開發中的優勢而不可或缺。

Python和JavaScript各有優勢,選擇取決於項目需求和個人偏好。 1.Python易學,語法簡潔,適用於數據科學和後端開發,但執行速度較慢。 2.JavaScript在前端開發中無處不在,異步編程能力強,Node.js使其適用於全棧開發,但語法可能複雜且易出錯。

javascriptisnotbuiltoncorc; sanInterpretedlanguagethatrunsonenginesoftenwritteninc.1)JavascriptwasdesignedAsignedAsalightWeight,drackendedlanguageforwebbrowsers.2)Enginesevolvedfromsimpleterterpretpretpretpretpreterterpretpretpretpretpretpretpretpretpretcompilerers,典型地,替代品。

JavaScript可用於前端和後端開發。前端通過DOM操作增強用戶體驗,後端通過Node.js處理服務器任務。 1.前端示例:改變網頁文本內容。 2.後端示例:創建Node.js服務器。

選擇Python還是JavaScript應基於職業發展、學習曲線和生態系統:1)職業發展:Python適合數據科學和後端開發,JavaScript適合前端和全棧開發。 2)學習曲線:Python語法簡潔,適合初學者;JavaScript語法靈活。 3)生態系統:Python有豐富的科學計算庫,JavaScript有強大的前端框架。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

Dreamweaver Mac版
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器