JavaScript搜尋框提示文字

antzone發表於2017-04-08

通常搜尋框裡面都有一定的提示文字,下面就通過程式碼例項介紹一下如何用原生javascript實現此功能。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style>
input{color:red}
</style>
<script type="text/javascript">
function iniEvent(){
  var txtSearch=document.getElementById("txtSearch");
  txtSearch.onfocus=function(){
    if(this.value=="請輸入關鍵字" || this.value==""){
      this.value="";
      this.style.color="black";
    }
  }
  txtSearch.onblur=function(){
    if(this.value=="請輸入關鍵字" || this.value==""){
      this.value="請輸入關鍵字";
      this.style.color="red";
    }
  }
}
window.onload=function(){
  iniEvent();
}
</script>
</head>
<body>
<input type="text" id="txtSearch" value="請輸入關鍵字"/>
</body>
</html>

上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。

一.程式碼註釋:

(1).function iniEvent(){},此方法實現了此功能。

(2).var txtSearch=document.getElementById("txtSearch"),獲取文字框元素物件。

(3).txtSearch.onfocus=function(){

  if(this.value=="請輸入關鍵字" || this.value==""){

    this.value="";

    this.style.color="black";

  }

}為文字框註冊onfocus事件處理函式。

如果當前文字框的value值等於"請輸入關鍵字"的時候或者值等於空的時候,就把文字框內容清空,其實第二個條件可以省略。

並且將字型顏色設定為黑色。

(4).txtSearch.onblur=function(){

  if(this.value=="請輸入關鍵字" || this.value==""){

    this.value="請輸入關鍵字";

    this.style.color="red";

  }

  else{

    this.style.color="black";

  }

},為文字框註冊onblur事件處理函式。

如果文字框的內容為"請輸入關鍵字"(這個可以省略)或者空的話,就將文字框的值設定為"請輸入關鍵字"。

否則的話將字型顏色設定為黑色。

二.相關閱讀:

(1).onfocus事件可以參閱javascript focus事件一章節。

(2).onblur事件可以參閱javascript blur事件一章節。

相關文章