百度和优酷的搜索体验改善,类似Google Instant搜索

转载:http://www.cnblogs.com/samwu/archive/2011/06/29/2093761.html

上次看到国外那谁谁实现了Youtube的Instant搜索,据说花了三小时。

我笑了,我看了那篇文章后,自己花了三小时,实现了百度和优酷的Instant搜索体验。

难点在于,键盘输入的监听。用了JQuery自带的keyup函数,再加JS自带的setTimeout函数,较好地实现了效果。
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >

< html  xmlns ="http://www.w3.org/1999/xhtml" >
< head >
    
< title ></ title >
    
< style  type ="text/css" >
    .hidden
    
{
        display
: none ;
    
}
    .show
    
{
        display
: block ;
         border
: 0 ;
    
}
    #up
    
{
        margin
: -100px 0 0 0 ;
        width
: 1300px ;
        height
: 900px ;
        
        
/*  text-align:center;   */
    
}
    
        #getKey
        
{
            height
:  36px ;
            width
:  379px ;
            font-size
: large ;
            
        
}
    
    
</ style >
    
< script  src ="JS/jquery-1.4.2-vsdoc.js"  type ="text/javascript" ></ script >
    
< script  type ="text/javascript" >
        
var  baidu  =   1 var  youku  =   0 ;
        
var  getKey; 
        
function  gotothere() {
            getKey 
=  $( " #getKey " ).val();
            
if  (getKey  ==   "" ) {
                
// alert("sorry");
                 // $("up").className = "show";
            }
            
else  {
                
if  (baidu  ==   1 ) {
                    $(
" #up " ).attr( " src " " http://www.baidu.com/s?wd= "   +  encodeURI(getKey)  +   " &inputT=624&ie=utf-8 " );
                }
                
else   if  (youku  ==   1 ) {
                    $(
" #up " ).attr( " src " " http://www.soku.com/search_video/q_ "   +  getKey);
                }
            }
        }
        $(
function () {
            $(
" #getKey " ).keyup( function () { // 监听键盘按下事件
                
                
var  timer  =  setTimeout( " gotothere() " 500 ); // 有时候键盘按得太快,监听事件来不及反应,所以用setTimeout函数来延迟
            });


        });

        $(
function () {
            $(
" #baidu " ).click( function () {
                baidu 
=   1 ; youku  =   0 ;
                $(
" #up " ).attr( " src " " http://www.baidu.com/s?wd= "   +  encodeURI(getKey)  +   " &inputT=624&ie=utf-8 " );
            });
            $(
" #youku " ).click( function () {
                youku 
=   1 ; baidu  =   0 ;
                $(
" #up " ).attr( " src " " http://www.soku.com/search_video/q_ "   +  getKey);
            })
        })

    
</ script >
</ head >
< body  style ="overflow-y: hidden;" >
请输入你想要搜索的关键字:
< input  id ="getKey"  type ="text"   />< href ="#"  id ="baidu" > 百度 </ a > &nbsp | &nbsp < href ="#"  id ="youku" > 优酷 </ a >< br  />
< div  style ="overflow:hidden" >< iframe  id ="up"  class ="show"  frameborder ="0"   ></ iframe ></ div >
</ body >
</ html >
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值