憨厚生

          ----Java's Slave----
          ***Java's Host***

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            165 隨筆 :: 17 文章 :: 90 評(píng)論 :: 0 Trackbacks
               電子商務(wù)系統(tǒng),站內(nèi)查詢是一個(gè)基本功能。但是開發(fā)一個(gè)高效的站內(nèi)查詢系統(tǒng)也不是件容易的事!好多站內(nèi)查詢系統(tǒng)都是通過lucene的2次開發(fā)來實(shí)現(xiàn)的。在站內(nèi)查詢系統(tǒng)開發(fā)完成之前,調(diào)用google的站內(nèi)查詢也是一個(gè)辦法。
               前幾天,查找了相關(guān)資料,把其功能寫成了一個(gè)函數(shù)方便調(diào)用,貼出來,希望對(duì)大家有用!

          /**
          *@description google查詢對(duì)象
          *@param sitesearch 搜索的指定網(wǎng)站或指定域名
          *@param ie 發(fā)送搜索詞的網(wǎng)頁編碼,預(yù)設(shè)值為"UTF-8",由于在中國(guó)很多網(wǎng)站是使用 GB2312 編碼
          *@param oe 顯示搜索的網(wǎng)頁編碼,預(yù)設(shè)值為"UTF-8",由于現(xiàn)代大部分機(jī)器都能支持"UTF-8"無誤,因此你大概不需要調(diào)整次參數(shù);
          *@param hl 顯示搜索的網(wǎng)頁語言。"zh-CN"為簡(jiǎn)體中文,"zh-TW"為繁體中文,"en"為英文。
          */

          function GoogleSearch(sitesearch,ie,oe,hl){
                   this.sitesearch=sitesearch;
                   this.ie=ie;
                   this.oe=oe;
                   this.hl=hl;
          }

          GoogleSearch.prototype={
                       init:function(){
                            var searchdiv_=createEle("DIV",{"style":"display:none;"});
                            var form_=createEle("FORM",{"action":"http://www.google.cn/search", "method":"get", "name":"gs","id":"gs"});
                            var sitesearch_=createEle("input",{"name":"sitesearch","value":this.sitesearch, "type":"hidden"});    
                            var hl_=createEle("INPUT",{"name":"hl", "value":this.hl,"type":"hidden"});
                            var ie_=createEle("INPUT",{"name":"ie","value":this.ie,"type":"hidden"});
                            var oe_=createEle("INPUT",{"name":"oe","value":this.oe,"type":"hidden"});
                            var query_=createEle("INPUT",{"name":"q","id":"q","type":"text"});
                          
                            form_.appendChild(sitesearch_);   
                            form_.appendChild(hl_);   
                            form_.appendChild(ie_);   
                            form_.appendChild(oe_);   
                            form_.appendChild(query_);
                           
                            searchdiv_.appendChild(form_);   
                            document.body.appendChild(searchdiv_);
                       },
                       search:function(key){
                               if(document.getElementById("gs"))
                                  this.init();
                               document.getElementById("q")["value"]=key;
                               document.getElementById("gs").submit()
                       }
          }

          function createEle(tagname,obj){
                   var ele=document.createElement(tagname);
                   for(property in obj){
                       ele.setAttribute(property,obj[property]);
                   }
                   return ele;
          }

          var GS=new  GoogleSearch("www.youwebsite.com","GB2312","UTF-8","zh-CN");
          其中www.youwebsite.com,是你的網(wǎng)站域名;
          調(diào)用方式很簡(jiǎn)單:GS.search("查詢關(guān)鍵字");



          參考:http://www.aygfsteel.com/hulizhong/archive/2009/02/12/254350.html


          posted on 2009-02-17 14:20 二胡 閱讀(1505) 評(píng)論(2)  編輯  收藏 所屬分類: 互聯(lián)網(wǎng)

          評(píng)論

          # 代碼修正 2009-12-31 10:12 hello
          search:function(key){
          if(document.getElementById("gs")==undefined)
          this.init();
          document.getElementById("q")["value"]=key;
          document.getElementById("gs").submit()
          }  回復(fù)  更多評(píng)論
            

          # re: 如何添加google站內(nèi)搜索代碼到自己網(wǎng)站 2010-01-02 11:05 二胡
          @hello
          if(document.getElementById("gs"))與
          if(document.getElementById("gs")==undefined)
          效果是一樣的,如果document.getElementById("gs")為undefined的話,其值也會(huì)轉(zhuǎn)換成false  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 泾源县| 乐至县| 三明市| 江源县| 响水县| 陕西省| 红原县| 临夏县| 广宁县| 崇文区| 龙门县| 留坝县| 巴彦淖尔市| 来凤县| 皋兰县| 宁强县| 同德县| 渭南市| 沅陵县| 米易县| 富民县| 信阳市| 五河县| 丹阳市| 深水埗区| 华坪县| 高邮市| 祥云县| 辽源市| 葵青区| 兴山县| 承德市| 龙泉市| 筠连县| 库伦旗| 尤溪县| 汕头市| 纳雍县| 稻城县| 藁城市| 大名县|