博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS 实现百度搜索功能
阅读量:5821 次
发布时间:2019-06-18

本文共 3668 字,大约阅读时间需要 12 分钟。

  今天我们来用JS实现百度搜索功能,下面上代码:

    HTML部分:

            
百度一下,你就知道

    CSS层叠样式部分:

body{
/*清除浏览器自带样式*/ margin: 0; padding: 0; /*background-repeat: no-repeat;*/ min-width: 1200px;}.box{
/*最大的盒子*/ width: 100%; height: 100%; /*background: yellow;*/ /*height: 636px;*/}.box_log{
/*log盒子*/ width: 100%; height: 250px; text-align: center;}.box_log_img{ margin:0 auto; width: 300px; height: 150px;}.box_log img{ width: 300px; height: 150px; margin-top: 38px; margin-bottom: 19px;}.box_text{
/*text搜索框盒子大小*/ width: 100%; height: 36px;}.box_text_content{ width: 640px; height: 36px; margin: 0 auto;}#text{ /*input框的样式*/ width: 540px; height: 36px; box-sizing: border-box; margin-top: 3px; text-indent: 4px; outline: none;}.log_img{
/*input框中的小相机*/ position: absolute; left: 62%; top: 35.5%;}#btn{ /*按钮的样式*/ width: 100px; height: 36px; background: #3385FF; border: 0px; letter-spacing: 1px; color: white; margin-left: -5px; font-size: 15px; box-sizing: border-box; transform: translateY(1.5px); box-sizing: border-box;}#btn:hover{ /*当按钮hover的样式*/ cursor: pointer;}#search{ /*搜索框的样式*/ width: 540px; margin: 0; padding: 0; list-style: none; display: none; border: 1px solid #E3E5E4; }#search li{ /*搜索框li的大小颜色*/ line-height: 36px; background: white;}#search li:hover{ /*当li hover的样式*/ background: #F0F0F0;}.li1{ /*li中的值缩进*/ text-indent: 4px;}

    JS部分:

var otext = document.getElementById("text");  //获取input框ose = document.querySelector("#search");  //通过类名选择器 选择到search框lis = document.getElementsByClassName("li1");  //获取所有的liotext.onkeyup = function(){   //当在input框中键盘弹起发生事件    ose.style.display = otext.value?"block":"none";  /*三目运算符,如果otext.value的值部位空,则block。*/    var osc = document.createElement("script");  /*创建一个script标签*/    osc.src = "https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd="+otext.value+"&cb=houxiaowei";    /*srcipt的src值引入百度的url,然后将otext文本框中输入的内容连接到url,在后面在运行自己的方法*/    document.body.appendChild(osc);    /*将创建好的script标签元素放入body中*/            /*input框中按下回车根据input的值跳转页面*/    if(event.keyCode==13){        /*将百度作为连接,传入input的值,并跳入新的页面*/        window.location.href = "https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd="+otext.value    }}var count = 0;var search = 0;var arr = ose.children; /*获取ose下的所有li*/function houxiaowei(json){    var jsonLength = 0;  /*json长度的初始值*///                    console.log(json.s);    for(var x in json.s){   /*将循环的次数变成json的长度*/        jsonLength++;    }//                    console.log(jsonLength);    for(var i=0;i

  搜索功能的实现源于百度的 https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd="+otext.value+"&cb=houxiaowei,这个链接,其中”wd”的值为input框中需要搜索的值,它会返回一个json对象。&cb的值是一个方法或者是函数

,它用来将json中的值提取出来放入li中。

    今天就分享到这里~

 

  

转载于:https://www.cnblogs.com/houxiaowei/p/8398014.html

你可能感兴趣的文章
一维数组
查看>>
Linux学习笔记之三
查看>>
修改上一篇文章的node.js代码,支持默认页及支持中文
查看>>
Php实现版本比较接口
查看>>
删除设备和驱动器中软件图标
查看>>
第四章 TCP粘包/拆包问题的解决之道---4.1---
查看>>
html语言
查看>>
从源码看集合ArrayList
查看>>
spring-boot支持websocket
查看>>
菜鸟笔记(一) - Java常见的乱码问题
查看>>
我理想中的前端工作流
查看>>
记一次Git异常操作:将多个repository合并到同一repository的同一分支
查看>>
CodeIgniter 3.0 新手捣鼓源码(一) base_url()
查看>>
Chrome 广告屏蔽功能不影响浏览器性能
查看>>
vSphere 6将于2月2日全球同步发表
查看>>
Android状态栏实现沉浸式模式
查看>>
让你的APP实现即时聊天功能
查看>>
iOS 绝对路径和相对路径
查看>>
使用Openfiler搭建ISCSI网络存储
查看>>
学生名单
查看>>