文档章节

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

crossmix
 crossmix
发布于 2015/12/13 22:40
字数 1046
阅读 269
收藏 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
粉丝 65
博文 305
码字总数 645711
作品 0
广州
高级程序员
浅析cookie和session

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

Mr_Qi
2012/08/27
0
0
joomla首页模板如何只显示文章标题列表

如题,目前自己正在创建自己的网站系统,但是遇到几个问题一直都想不通, 1:在模板中如何才能制作类似网站最新文章列表,不出现搜索框。 2:如果要使网站文章内容页与首页样式不一样有什么办法...

诸葛非卿
2014/02/20
1K
2
[百度SEM竞价学习之二]——百度搜索推广概述

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

霞女
2016/06/20
28
0
WEB前端工程师-练成

一、HTML和CSS基础 1.1 开发工具 1.1.1 前端开发工具技巧介绍-DW篇 1.1.2 前端开发工具技巧介绍-Sublime篇 1.2 HTML和CSS基础课程 1.2.1 HTML+CSS基础课程 1.3 网页布局 1.3.1 如何用CSS进行...

霞女
2015/12/02
62
0
5大PPT幻灯片制作技巧,肯定有你不会的!

对于职场人员来说,制作PPT可能是经常需要进行的工作,那么对于PPT幻灯片的制作,大家有什么自己觉得非常棒的技巧呢?小编今天先来给大家分享几个,你们看看会不会。 快速浏览幻灯片 在制作P...

梗集_5ec8
07/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

C++ std::function 和 std::bind

C++11提供了std::function和std::bind两个工具,用于引用可调用对象。这些可调用对象包括 普通函数,Lambda表达式,类的静态成员函数,非静态成员函数以及仿函数等。引用可调用对象,可以用于...

yepanl
44分钟前
1
0
python:可迭代对象的索引

关于 python的range的用法: 注意是[ 开始,结束)的半开区间,不包括结束 http://www.runoob.com/python/python-func-range.html import collectionsfrom collections import Iterable字符串......

Oh_really
59分钟前
2
0
docker-compose ,docker-stack

1.例子 version: "3"services: php: image: registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5 ports: - "38080:80" networks: - my_php_mysql volum......

chenbaojun
今天
3
0
SQL_Server2000示例数据库NorthWind的分析(转)

SQL_Server2000示例数据库NorthWind的分析 表名:Categories(食品类别表) 表结构: 字段名称 数据类型 长度 允许为空 CategoryID(主键) int 4 否 CategoryName nvarchar 15 否 Description ...

QQZZFT
今天
1
0
laravel 5.5 Session store not set on request.

laravel 5.5 数据存入session,会出现Session store not set on request.错误。查了下laravel 5.5将session放到global middleware中,需要laravel的文件 ./app/Http/Kernel.php中的加上一句:...

MichaelShu
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部