文档章节

浅析几种网站搜索框的制作

crossmix
 crossmix
发布于 2015/12/13 22:40
字数 1046
阅读 296
收藏 5

    如果自己做的网站内容太多,主要是网站导航栏的内容增多,当用户想寻找一个自己需要的内容时,一个一个查找是一件很累的事情,如果在自己的网站上做一个搜索框,提供网站搜索功能,那就事半功倍了。

    目前网站搜索框有三种。

 一,支持HTML5语音API的语音识别文本框了<input x-webkit-speech />

   即语音搜索框,如谷歌的网站以及淘宝网搜索框添加了语音搜索功能,虽然目前只有webkit内核浏览器支持,如Chrome 11+浏览器,但是相信随着html的普及,绝大多数浏览器会支持此功能。图:

   

<input />

支持HTML5语音API的语音识别文本框

<input x-webkit-speech />


此时,对着音频输入设备(如耳麦)发出你那或妖娆,或醇厚,或磁性的嗓音,啊~~

动画效果:图

当然还有一些其他的参数,比如设置语音限制语言种类

代码如下:

<input x-webkit-speech lang="zh-CN" />

还有设置语音输入语法的参数,这个就比较试用于搜索框。加上这参数后,系统就会自动去掉“的”、“啦”这类无意义的字

<input x-webkit-speech x-webkit-grammar="bUIltin:search" />
还有一个onwebkitspeechchange的方法,发生在语言识别成功,且文字输入到文本框后触发。
<input x-webkit-speech x-webkit-grammar="bUIltin:search" />

我觉得所有网站所有的类似搜索的输入框都让他支持HTML5语言识别!

HTML5+CSS3打造可自动获得焦点和支持语音输入的超酷搜索框:

<!DOCTYPE html >
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>请使用支持HTML5的chrome浏览器体验语音搜索效果。|www.xin126.cn</title>
<style type="text/css">
 .search_form{position:relative; height:31px; margin:60px;display:inline-block;} 
 .search_form:hover{-webkit-box-shadow:0 0 3px #999;-moz-box-shadow:0 0 3px #999}
 .sinput{float:left; width:200px; height:21px; line-height:21px; padding:4px 7px; color:b3b3b3;  border:1px solid #999; border-radius:2px 0 0 2px; background-color:#fbfbfb;} 
 .sbtn{
  float:left; 
  width:50px; 
  height:31px;
  padding:0 12px;
  margin-left:-1px; border-radius:0 2px 2px 0; border:1px solid #4d90fe; background-color:#4d90fe; cursor:pointer;  display:inline-block; font-size:12px; vertical-align:middle; color:#f3f7fc;position:absolute;} 
 .sbtn:hover{background:#4084f2} 
</style>
</head>
<body>
<form action="#" method="get" class="search_form">     <input type="text" name="s" class="sinput" placeholder="输入 回车搜索" autofocus x-webkit-speech>      <input type="submit" value="搜索" class="sbtn"> </form> 
</body>
</html>
二,简单的网页搜索框

   打开Dreamweaver cs6,首先,我们打开自己建了一半的网页或者是新建一个页面,个人建议用HTML5。图

然后,我们开始编写代码。搜索框要有输入框和搜索按钮两部分组成,我用的都是input


我们会在input框的外面再套一个标签,我是仿照百度搜索的样子,在input的外面套了一个span标签,在最外层套了一个form表单


我们的第一个input框是用来输入文字的,其type类型应该是text,第二个是搜索的,我用的type类型是submit(提交),


这样一个基本的搜索框就做好了,我们可以再调整一下框的高度和宽度,以及整体的位置,使得这个搜索框更加美观大方。


这种搜索框是简单的。

三,动态网站搜索框,语言ASP,PHP网站为主。

以PHP网站为主,打开Dreamweaver cs6,

  1. 新建一个搜索页面,将它命名为:searchform.php
2,用Dreamweaver cs6 打开searchform.php,将以下代码复制到searchform.php中。

<form method="get" id="searchform"  action="<?php bloginfo('url'); ?>/">   <input type="text" value="输入关键字" name="s" id="s"/>  <input type="submit" value="搜 索"  onClick="if(document.forms['search'].searchinput.value=='- Search -')document.forms['search'].searchinput.value='';" alt="Search"  />

  1. </form>  
    <script type="text/javascript">
            $(document).ready(function(){
                    // 当鼠标聚焦在搜索框
                    $('#s').focus(
                            function() {
                                    if($(this).val() == '输入关键字') {
                                            $(this).val('').css({color:"#454545"});
                                    }
                            }
                    // 当鼠标在搜索框失去焦点
                    ).blur(
                            function(){
                                    if($(this).val() == '') {
                                            $(this).val('输入关键字').css({color:"#333333"});
                                    }
                            }
                    );
            });
    </script>
  2. 复制网站主题里的archive.php页面,更名为search.php,才能实现搜索功能。
  3. 在需要显示搜索框的页面的位置放上搜索框调用代码:
    <?php include (TEMPLATEPATH . '/searchform.php'); ?>
  4. 完全之后,就可以在自己做的网站中实现搜索功能了。
  5. PHP网站搜索框打造完毕
  6. end

  

© 著作权归作者所有

共有 人打赏支持
crossmix
粉丝 66
博文 305
码字总数 645711
作品 0
广州
高级程序员
私信 提问
浅析cookie和session

关于cookie和session的区别: 通常意义上的cookie指的是利用客户端的技术在计算机用户的文件夹下存储的文件,又名硬盘cookie,一般来说是有上限的。我的cookie是存在D:Documents and Setting...

Mr_Qi
2012/08/27
0
0
[百度SEM竞价学习之二]——百度搜索推广概述

百度简介 从2000年开始,百度作为免费网页搜索服务提供者,凭借先进的技术和对中文的深刻理解,创造了非凡的搜索体验,提供了海量的信息服务,倍受中文网民青睐,在中国的搜索份额逐年攀升。...

霞女
2016/06/20
28
0
浅析ASP网站后台设计

现在学习ASP语言很少啦,逐渐被PHP,asp.net,jsp所代替。 这里介绍ASP网站后台设计技巧 1.用户名规则: 字符大于4, 不能在黑名单里(比如不能跟管理员有重名,不能有任何包含本站域名的相...

crossmix
2015/10/08
71
0
搜索意图三分法:用户搜索行为及其意图浅析

搜索行为目前已经成为每个上网的人的基本需求,但是用户的搜索行为是怎样一个过程?隐藏在用户查询背后的搜索意图是什么?这都是需要站长、营销人员仔细研究的领域,只有这样才能提供更好的用户...

刀心
2015/06/10
0
0
几个非常实用的JQuery代码片段

jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多)。jQuery使用户能更方便地处理HTML(标准通用标记语言下的一个应用)、events、实现动画效果,并...

IT智云编程
11/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

SpringBoot中使用@RequestBody时如何自定义需要转换的日期格式

SpringBoot序列化和反序列化Json时默认使用的是Jackson(例如使用@RequestBody反序列化前端传递过来的Json字符串时), 当我们前端使用Json字符串传递到后台时日期格式可能是时间戳(即long类...

帅得拖网速
33分钟前
0
0
可自定义扩展底部列表对话框ListBottomSheetDialogFragment

因为需要,为了方便,构建了一个可以自定义扩展的底部列表对话框,可以应付大部分场景。 效果图如下: 1.默认实现: 2.自定义列表实现 3.自定义头部和列表实现 一.可实现功能 1.默认可实现通...

明月春秋
今天
1
0
数据库---增删改查

增:insert into 表名(列名1,列名2) values(‘列值1’,‘列值2’) 多行数据处理:insert into 表名(列名1,列名2) select ‘列值1’,‘列值2’ union select ‘列值1.1’,‘列值2.2...

森林之下
今天
2
0
分布式/集群下session共享方案汇总

除去那些对容器依赖特别高的方案(如: 基于Tomcat的memcached-session-manager / tomcat-redis-session-manager,基于Jetty的jetty-nosql-memcache / jetty-session-redis ),自己整理了下...

哥本哈根的小哥
今天
2
0
Vue中的缩写:v-bind、v-on

v-bind 缩写:: 预期:any (with argument) | Object (without argument) 参数:attrOrProp (optional) 修饰符: .prop - 被用于绑定 DOM 属性。 .camel - (2.1.0+) 将 kebab-case 特性名转换......

文文1
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部