仿google搜索提示 SuggestFramework的使用
Suggest Framework 故名思意,就是仿 Google Suggest 的一個(gè)小框架,讓你的文本框也有提示功能。利用suggest framework你可以在自己的網(wǎng)站上很輕松實(shí)現(xiàn)“輸入提示”效果,這種效果會(huì)很大程度上提高用戶體驗(yàn),提高搜索效率。
一個(gè)頁(yè)面上可以出現(xiàn)多個(gè)搜索框,每個(gè)搜索框都可以實(shí)現(xiàn)單獨(dú)配置。
此框架無(wú)瀏覽器限制,基本兼容當(dāng)前的絕大多數(shù)瀏覽器,包括Internet Explorer 5+ (Win/Mac)、Firefox (Win/Mac)、Opera 8+等等。
二.下面來(lái)介紹一下怎么安裝
你只需要復(fù)制SuggestFramework.js到你的服務(wù)器,然后自定義提示效果的css樣式,實(shí)現(xiàn)個(gè)性的搜索提示。
而css樣式文件,需要你自己做好,并且加入到每一個(gè)頁(yè)面。
補(bǔ)充:SuggestFramework.js已經(jīng)試用Dojo ShrinkSafe進(jìn)行壓縮,具體請(qǐng)看http://alex.dojotoolkit.org/shrinksafe/
三.然后介紹一下如何使用
在網(wǎng)頁(yè)的<head></head>標(biāo)簽中,加入下面兩句:
<script type="text/javascript" src="/path/to/SuggestFramework.js"></script>
<script type="text/javascript">window.onload = initializeSuggestFramework;</script>
有了上面兩句后,每個(gè)取了名的文本框會(huì)多出五個(gè)屬性:
1.action 必須。接受 GET 方式提交的數(shù)據(jù),并返回相關(guān) Javascript 數(shù)組的動(dòng)態(tài)頁(yè)。
2.capture 如果返回的結(jié)果不止一列(比如本例中的單詞和中文意思),將要替換用戶輸入的那一列(從 1 開(kāi)始算)。通常這個(gè)和數(shù)據(jù)庫(kù)字段相對(duì)應(yīng)。
可選,默認(rèn)為 1.
3.columns 下拉顯示的列數(shù),比如本例中,按字母查詢單詞,并將中文意思顯示在右側(cè)??蛇x,默認(rèn)為 1.
4.delay 查詢延時(shí),單位為毫秒。較低的延時(shí)會(huì)得到更快的反應(yīng),但會(huì)加重服務(wù)器負(fù)擔(dān)??蛇x,默認(rèn)為 1000(1秒)。
5.heading 如果設(shè)為 true ,第一個(gè)數(shù)組值將作為不可選擇項(xiàng)(標(biāo)題欄)。當(dāng)有兩列或兩列以上數(shù)據(jù)時(shí)非常有用??蛇x,默認(rèn)為 false.
數(shù)據(jù)提交只需要兩個(gè)數(shù)據(jù)
1.type 輸入框的name
2.q 搜索關(guān)鍵字(默認(rèn)UTF-8編碼)
您下載的壓縮包中,已經(jīng)包含php和ColdFusion示例,當(dāng)然這個(gè)框架可以適用于所有的編程語(yǔ)言,無(wú)平臺(tái)限制。后臺(tái)數(shù)據(jù)輸出就是一條 Javascript 語(yǔ)句。一維數(shù)組這么寫(xiě):
new Array(”val1″, “val2″, “val3″);
二維數(shù)組這么寫(xiě):
new Array(
new Array(”第1行條第1列”, “第1行第2列”),
new Array(”第2行條第1列”, “第1行條第2列”),
new Array(”第3行條第1列”, “第1行條第2列”)
);
最后介紹一下,css中需要定義的4個(gè)類
.SuggestFramework_List 提示內(nèi)容所在區(qū)域
.SuggestFramework_Heading 第一條提示
.SuggestFramework_Highlighted 設(shè)置高亮的一條提示
.SuggestFramework_Normal 其他提示
四.提示,如果出現(xiàn)亂碼或者javascript腳本錯(cuò)誤請(qǐng)用下面方法解決。
1. 給后臺(tái)返回?cái)?shù)據(jù)的頁(yè)面(例如display.asp) 添加一個(gè) GB2312 轉(zhuǎn) UTF-8 的函數(shù),使用此函數(shù)把數(shù)據(jù)庫(kù)讀出來(lái)的內(nèi)容轉(zhuǎn)成 UTF-8 編碼。
2. 如果是后臺(tái)為asp頁(yè)面,代碼首行添加 <[email=%@LANGUAGE=”VBSCRIPT]%@LANGUAGE=”VBSCRIPT[/email]” CODEPAGE=”936″%> 指令。
3. 把后臺(tái)返回?cái)?shù)據(jù)的頁(yè)面(例如display.asp)文件存成 UTF-8 格式。
e文原文地址:http://sourceforge.net/project/shownotes.php?group_id=145701&release_id=399504
官方下載地址:http://sourceforge.net/project/showfiles.php?group_id=145701
- JSuggest自動(dòng)匹配下拉框使用方法(示例代碼)
- inputSuggest文本框輸入時(shí)提示、自動(dòng)完成效果(郵箱輸入自動(dòng)補(bǔ)全插件)
- javascript suggest效果 自動(dòng)完成實(shí)現(xiàn)代碼分享
- suggestion開(kāi)發(fā)小結(jié)以及對(duì)鍵盤(pán)事件的總結(jié)(針對(duì)中文輸入法狀態(tài))
- ajax Suggest類似google的搜索提示效果
- AJAX實(shí)現(xiàn)仿Google Suggest效果
- Google Suggest ;-) 基于js的動(dòng)態(tài)下拉菜單
- 有關(guān)suggest快速刪除后仍然出現(xiàn)下拉列表的bug問(wèn)題
相關(guān)文章
使用ajax接收后臺(tái)發(fā)送過(guò)來(lái)的json數(shù)據(jù)方法
今天小編就為大家分享一篇使用ajax接收后臺(tái)發(fā)送過(guò)來(lái)的json數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08jQuery AJAX實(shí)現(xiàn)調(diào)用頁(yè)面后臺(tái)方法
這篇文章主要為大家詳細(xì)介紹了jQuery AJAX實(shí)現(xiàn)調(diào)用頁(yè)面后臺(tái)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05AJAX如何實(shí)現(xiàn)無(wú)刷新登錄功能
點(diǎn)擊登錄按鈕時(shí)彈出登錄窗口,輸入正確的用戶名密碼后點(diǎn)擊登錄則登錄窗口關(guān)閉,狀態(tài)改為當(dāng)前用戶名.這篇文章主要介紹了AJAX如何實(shí)現(xiàn)無(wú)刷新登錄功能,需要的朋友參考下2017-01-01使用Ajax實(shí)時(shí)檢測(cè)"用戶名、郵箱等"是否已經(jīng)存在
這篇文章主要介紹了使用Ajax實(shí)時(shí)檢測(cè)"用戶名、郵箱等"是否已經(jīng)存在,需要的朋友可以參考下2015-01-01ajax提交到j(luò)ava后臺(tái)之后處理數(shù)據(jù)的實(shí)現(xiàn)
下面小編就為大家?guī)?lái)一篇ajax提交到j(luò)ava后臺(tái)之后處理數(shù)據(jù)的實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05用AJAX實(shí)現(xiàn)的無(wú)刷新的分頁(yè)實(shí)現(xiàn)代碼(asp.net)
最近學(xué)習(xí)了AJAX技術(shù)。AJAX,指的是異步的Javascript和xml。它的基本原理就是頁(yè)面用Javascript發(fā)送一個(gè)異步的http請(qǐng)求到服務(wù)器,服務(wù)器返回?cái)?shù)據(jù)后,再用Javascript靜態(tài)的去更改頁(yè)面某個(gè)地方的值,而無(wú)需提交表單。2011-04-04Ajax實(shí)現(xiàn)動(dòng)態(tài)顯示并操作表信息的方法
今天小編就為大家分享一篇Ajax實(shí)現(xiàn)動(dòng)態(tài)顯示并操作表信息的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08ajax動(dòng)態(tài)獲取數(shù)據(jù)庫(kù)中的數(shù)據(jù)方法
今天小編就為大家分享一篇ajax動(dòng)態(tài)獲取數(shù)據(jù)庫(kù)中的數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08