2025-05-23

上次看到國外那誰誰實現瞭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” /><a href=”#” id=”baidu”>百度</a>&nbsp|&nbsp<a href=”#” id=”youku”>優酷</a><br />
<p style=”overflow:hidden”><iframe id=”up” class=”show” frameborder=”0″ ></iframe></p>
</body>
</html>

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *