用JavaScript实现“中文搜索引擎大全”>>1——在很多中文站点上,都设计有一个搜索引擎大全,里面集成了国内外比较有名的一些中英文搜索引擎、软件搜索引擎、音乐搜索引擎等,您只需简单地输入查询关键字,再选择其中您喜欢的任意一个搜索引擎,就可以开始搜索——
本文给出用JavaScript编程实现的一种方法,具有JavaScript程序共有的快速反应特点,直达搜索站点,可以任意定制您喜欢的搜索引擎——
首先,我们需要定义好搜索参数这一对象://对象属性的定义
functionSearchObj(name,url,method,para){
this.name=name
//搜索引擎的名称
this.url=url//搜索引擎站点的URL地址
this.method=method//提交表单的方法POST或GET
this.para=para//完成搜索需要的参数
}//各搜索引擎的定义varSearch=newArray()Search[0]=newSearchObj(\'新浪\',\'http://search.sina.com.cn/cgi-bin/search/search.cgi\',\'GET\',\'_searchkey?,_andor=and,_channel=search\')Search[1]=newSearchObj(\'搜狐\',\'http://www.sohoo.com.cn/cgi-bin/research.pl\',\'POST\',\'T1?,R1=V1\')——para参数的设置,依次是关键字名称加?,后续的每个参数以,分开,参数名称和参数值之间以=连接。关键字放在第一位——
各参数均采集于相应的搜索引擎站点,这里仅举数例。Search[2]=newSearchObj(\'263\',\'http://search.263.net/php/url/sekeys.dll\',\'GET\',\'keys?,lang=c,dates=1000\')Search[3]=newSearchObj(\'网易YEAH\',\'http://www.yeah.net/cgi-bin/search.cgi\',\'POST\',\'key?\')
然后,是各JavaScript函数的定义://开始搜索functionStartSearch(){
//此函数通过开始搜索按钮的onClick事件激活document.forms[SearchFirstFormdocument.SearchInputForm.SearchSelect.selectedIndex].elements[0].value=document.SearchInputForm.KeyWords.valuedocument.forms[SearchFirstFormdocument.SearchInputForm.SearchSelect.selectedIndex].submit()}//生成各搜索表单的HTML代码
functionSearchForm(){varHtmlStr=\'\'vartmpStr=\'\'
for(vari=0;i<INPUTTYPE=hiddenNAME=
re=/[?]/g
tempStr=tempStr.replace(re,\'VALUE\')
//将参数中的?替换为字符串VALUE
//以下进行简单的字符串操作,生成各表单的HTML代码
HtmlStr+=\'\'
+\'\'
}
return(HtmlStr)
//返回搜索表单的HTML
}//生成SELECT选择列表的HTML代码
functionSearchSelect(){varHtmlStr=\'\'HtmlStr=\'\'for(vari=0;i<Search.length;i++){HtmlStr+=\'<OPTION\'if(i==0){HtmlObj(\'263\',\'http://search.263.net/php/url/sekeys.dll\',\'GET\',\'keys?,lang=c,dates=1000\')Search[3]=newSearchObj(\'网易YEAH\',\'http://www.yeah.net/cgi-bin/search.cgi\',\'POST\',\'key?\')
然后,是各JavaScript函数的定义://开始搜索functionStartSearch(){
//此函数通过开始搜索按钮的onClick事件激活document.forms[SearchFirstFormdocument.SearchInputForm.SearchSelect.selectedIndex].elements[0].value=document.SearchInputForm.KeyWords.valuedocument.forms[SearchFirstFormdocument.SearchInputForm.SearchSelect.selectedIndex].submit()}//生成各搜索表单的HTML代码
functionSearchForm(){varHtmlStr=\'\'vartmpStr=\'\'
for(vari=0;i<INPUTTYPE=hiddenNAME=
re=/[?]/g
tempStr=tempStr.replace(re,\'VALUE\')
//将参数中的?替换为字符串VALUE
//以下进行简单的字符串操作,生成各表单的HTML代码
HtmlStr+=\'\'
+\'\'
}
return(HtmlStr)
//返回搜索表单的HTML
}//生成SELECT选择列表的HTML代码
functionSearchSelect(){varHtmlStr=\'\'HtmlStr=\'\'for(vari=0;i<Search.length;i++){HtmlStr+=\'\'+Search[i].name}HtmlStr+=\'\'return(HtmlStr)
}//生成关键字输入框,搜索引擎选择,开始搜索按钮等搜索界面的HTML代码
functionSearchMain(){varHtmlStr=\'\'HtmlStr=\'\'+\'关键字:搜索引擎:\'+SearchSelect()+\'\'+\'SearchFirstForm=document.forms.length\'+\'\'+SearchForm()return(HtmlStr)
}——最后,在HTML文档的区,调用函数document.write(SearchMain())——参照本例,您完全可以定制您喜欢的其它搜索引擎:如英文搜索、软件搜索、FTP搜索、网络寻人、股票查询、天气查询等等——
[限于篇幅,查询关键字的合法性检查不在本文讨论范围,您可以自行添加。]——本程序在PII/WIN98+IE5环境下调试通过。