zoukankan      html  css  js  c++  java
  • 搜索框的实现

    参考博文:https://www.jianshu.com/p/200561e45518

    一、设计基本样式:

    原生html和css实现:

    <div id="show">
        <div class="search_img">
            <img src="./img/baidu.PNG" alt="百度" title="百度">
        </div>
        <div class="searchDiv">
            <input type="text" class="kw" name="keyword">
            <button class="searchButton" type="submit"><a href="" id="go">搜索</a></button>
            <div class="search_result">
                <ul> </ul>
            </div>
        </div>
    </div>
    <style>
        div.search_img{
            text-align: center;
        }
        img{
            margin: 100px auto;
        }
        div.searchDiv{
            background-color: #029ae5;
            width: 700px;
            margin: 1px auto;
            padding: 1px;
            height: 40px;
            display: block;
    
        }
        div.searchDiv input{
            width: 575px;
            border: 1px solid transparent;
            height: 34px;
            margin: 1px;
            outline:none;
        }
        div.searchDiv button{
            width: 110px;
            border: 1px solid transparent;
            background-color: #029ae5;
            font-size: 20px;
            font-weight: bold;
        }
        #go{
            color: white;
            text-decoration: none;
        }
        /*下拉框样式设置*/
        .search_result{
            border: #029ae5 1px solid;
        }
        ul{
            padding: 0;
            margin: 0;
        }
        li{
            line-height: 20px;
            font-size: 14px;
            cursor:pointer;
            box-sizing: border-box;
            padding:0 5px;
            list-style-type: none;
        }
        li:hover{
            background-color: rgb(230,230,230);
        }
        li>a{
            text-decoration: none;
        }
    </style>

    结果如下

     二:JavaScript编写

    提示:在这里直接调用百度api的接口

    $(document).ready(function () {
        $(".search_result").hide();
        $(".kw").keyup(function () {
            if ($(".kw").val() == ""){
                $("li").remove();
                $(".search_result").hide();
                return;
            } else {
                var url = "https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd="+$(".kw").val();
                querySUG(url);
            }
        });
    })
        function querySUG(url) {
            $("li").remove();
            $.ajax({
                type:"get",
                async:true,
                url:url,
                dataType:"jsonp",
                jsonp:"cb",
                jsonpCallback:"callback",
                success:function(data){
                    data.s.forEach(function (el) {
                        var lis = document.createElement("li");
                        lis.innerHTML="<a href='https://www.baidu.com/s?wd="+el+"'>"+ el+"</a>";
                        $(".search_result > ul").append(lis);
                    })
                    $(".search_result").show();
                },error:function() {
                    console.log('fail');
                }
            });
        }

     这里实现的功能是当输入相应的关键词,会出现相应的下拉框中的提示词,鼠标点击相应的关键词,会跳转到相应的搜索页面。至此简单的搜索框功能就实现了。

    但是!

    联系实际需求:我们更需要通过键盘的上下移动和enter键控制实现跳转页面!

     尚待完善,后续会持续更新!!

  • 相关阅读:
    JVM内存参数详解以及配置调优
    Sublime Text 3安装AngularJS插件
    GraphicsMagick安装&make命令使用
    清明节太原两日游
    Java异常处理机制 try-catch-finally
    成都一日游
    降低PNG图片存储大小方法、图片压缩方法
    Windows 10下mysql 64位 安装(mysql-5.7.11-winx64安装)
    解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variabl
    centos 7下Hadoop 2.7.2 伪分布式安装
  • 原文地址:https://www.cnblogs.com/lanhuo666/p/10018221.html
Copyright © 2011-2022 走看看