WordPress 搜索框添加文字提示的方法

在搜索欄中添加這樣的提示信息, 可以引導(dǎo)訪客對(duì)網(wǎng)站進(jìn)行搜索, 對(duì)技術(shù)類, 分享類網(wǎng)站尤其有效.
為了保持良好的用戶體驗(yàn), 我們一般會(huì)在搜索之后保留上次搜索的關(guān)鍵字, 如下圖是搜索 'WordPress' 關(guān)鍵字之后搜索欄的狀態(tài).
關(guān)于搜索框,我認(rèn)為有以下幾點(diǎn)需要注意
(1) 在建立搜索框的時(shí)候, value 的值應(yīng)該是關(guān)鍵字傳值, 而不是搜索欄提示. 或許你會(huì)說(shuō), 很多人都將提示作為搜索欄的初始內(nèi)容, 但我認(rèn)為是不好的. 而 Google 和百度都是將上次搜索的關(guān)鍵字作為搜索欄初始化內(nèi)容的. 所以我建議在有關(guān)鍵字的時(shí)候顯示關(guān)鍵字, 沒(méi)關(guān)鍵字的時(shí)候顯示提示.
(2) 如果輸入框沒(méi)有關(guān)鍵字內(nèi)容, 當(dāng)鼠標(biāo)點(diǎn)擊搜索輸入框的時(shí)候, 我們要讓提示信息消失; 而當(dāng)鼠標(biāo)離開輸入框時(shí), 重新顯示提示. 這就要求對(duì)輸入信息進(jìn)行判斷, 如何判斷? 最簡(jiǎn)單的方法是對(duì)比字符串, 所以這要求我們用一些不常用的文字串作為提示, 切記使用 "Search" 和 "搜索" 這些可能成為關(guān)鍵字的文字串作為提示.
(3) 如果搜索欄還提供一個(gè)提交按鈕, 那么在點(diǎn)擊提交按鈕的時(shí)候也要對(duì)搜索框內(nèi)容進(jìn)行檢測(cè), 如果是提示信息, 則不進(jìn)行搜索.
用 JavaScript 實(shí)現(xiàn)搜索框提示信息
下面是我在自用的 iNove 主題上添加提示信息的 jQuery 代碼, 請(qǐng)留意代碼注釋.
jQuery(document).ready(
function(){
// 當(dāng)鼠標(biāo)聚焦在搜索框
jQuery('#searchbox .textfield').focus(
function() {
// 如果搜索框的內(nèi)容是 "Type text to search here...", 文字顏色變深, 內(nèi)容清空.
if(jQuery(this).val() == 'Type text to search here...') {
jQuery(this).css({color:"#555"}).val('');
}
}
// 當(dāng)鼠標(biāo)在搜索框失去焦點(diǎn)
).blur(
function(){
// 如果搜索框的內(nèi)容是空, 則文字顏色變淺, 顯示 "Type text to search here..." 字樣.
if(jQuery(this).val() == '') {
jQuery(this).css({color:"#999"}).val('Type text to search here...');
}
}
);
// 當(dāng)點(diǎn)擊搜索按鈕時(shí)
jQuery('#searchbox .button').click(
function() {
// 如果搜索框內(nèi)容是 "Type text to search here..." 或者是空, 不進(jìn)行任何操作.
if(jQuery('#searchbox .textfield').val() == '' || jQuery('#searchbox .textfield').val() == 'Type text to search here...') {
return false;
// 否則提交并進(jìn)行搜索
} else {
jQuery(this).submit();
}
}
);
// DOM 加載完畢時(shí)發(fā)生的事件
jQuery(
function() {
// 如果搜索框內(nèi)容是 "Type text to search here..." 或者是空, 文字顏色變淺, 顯示 "Type text to search here..." 字樣.
if(jQuery('#searchbox .textfield').val() == '' || jQuery('#searchbox .textfield').val() == 'Type text to search here...') {
jQuery('#searchbox .textfield').css({color:"#999"}).val('Type text to search here...');
}
}
);
}
)
原理很簡(jiǎn)單, 用純 JS 實(shí)現(xiàn)只是為了維護(hù)方便, 你可以選擇其他方法. 我并沒(méi)有在發(fā)布的主題中添加這個(gè)功能是因?yàn)?JS 實(shí)現(xiàn)的代碼做不了國(guó)際化, 實(shí)在有點(diǎn)尷尬. 如果你真的喜歡, 可以自己嘗試實(shí)現(xiàn)一下.
相關(guān)文章
CyberPanel安裝WordPress并配置偽靜態(tài)規(guī)則
下面教你如何在 CyberPanel安裝WordPress以及配置偽靜態(tài),需要的朋友可以參考下2023-12-27- 這篇文章主要介紹了wordpress無(wú)法安裝更新主題插件的解決辦法,需要的朋友可以參考下2020-12-27
WordPress必備數(shù)據(jù)庫(kù)SQL查詢語(yǔ)句整理
發(fā)現(xiàn)幾條比較實(shí)用的,適合 WordPress 實(shí)用的SQL語(yǔ)句。于是就趕緊收集分享出來(lái)了,需要的朋友可以參考下2017-09-23wordpress在安裝使用中出現(xiàn)404、403、500及502問(wèn)題的分析與解決方法
wordpress是很多新手站長(zhǎng)搭建個(gè)人博客最喜愛(ài)的程序,但是最近在使用WordPress的時(shí)候遇到了一些問(wèn)題,所以想著將遇到問(wèn)題總結(jié)分享出來(lái),下面這篇文章主要給大家介紹了關(guān)于wo2017-08-11WordPress取消英文標(biāo)點(diǎn)符號(hào)自動(dòng)替換中文標(biāo)點(diǎn)符號(hào)的優(yōu)雅方法
這篇文章主要介紹了WordPress取消英文標(biāo)點(diǎn)符號(hào)自動(dòng)替換中文標(biāo)點(diǎn)符號(hào)的優(yōu)雅方法,需要的朋友可以參考下2017-04-04- 這篇文章主要給大家介紹了wordpress自定義上傳文件類型的方法,如WordPress默認(rèn)允許上傳 .exe 后綴名的可運(yùn)行文件,那么我們?cè)趺唇褂脩粼赪ordPress后臺(tái)發(fā)表文章時(shí)上傳 .e2016-12-19
- 大家可能發(fā)現(xiàn)了當(dāng)實(shí)現(xiàn)了前端用戶中心,后臺(tái)控制面板就失去了作用,那么限制其他用戶進(jìn)入后臺(tái)控制面板就很有必要了!那么我們要怎么做呢?通過(guò)下面這篇文章分享的方法后,只2016-12-19
WordPress實(shí)現(xiàn)回復(fù)文章評(píng)論后發(fā)送郵件通知的功能
這篇文章主要介紹了WordPress實(shí)現(xiàn)回復(fù)文章評(píng)論后發(fā)送郵件通知的功能,涉及wordpress針對(duì)評(píng)論與郵件的相關(guān)操作技巧,需要的朋友可以參考下2016-10-11WordPress使用自定義文章類型實(shí)現(xiàn)任意模板的方法
這篇文章主要介紹了WordPress使用自定義文章類型實(shí)現(xiàn)任意模板的方法,可通過(guò)自定義文章類型來(lái)實(shí)現(xiàn)任意模版的使用,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-10-11WordPress后臺(tái)地址被改導(dǎo)致無(wú)法登陸后臺(tái)的簡(jiǎn)單解決方法
這篇文章主要介紹了WordPress后臺(tái)地址被改導(dǎo)致無(wú)法登陸后臺(tái)的簡(jiǎn)單解決方法,簡(jiǎn)單分析了后臺(tái)無(wú)法登陸的原因與相應(yīng)的解決方法,涉及針對(duì)wordpress配置項(xiàng)的簡(jiǎn)單修改,需要的朋友2016-10-11