语音控制的tab选项卡
ladies and 乡亲们,程序猿同志们,周末仍然坚守工作岗位,或者学习不辍的童鞋们,福音来了。
语音识别高不高端、难不难?
今天给大家推荐一个简单易用的js实现的语音识别框架annyang,然后一个案例示范使用。
annyang是一个能够实现语音识别的js类库,小巧易用(只2k),兼容中文。接下来我们看看怎么使用。
首先导入该annyang库,能够使用CDN的方式,也能够下载来使用。
<!--下载到本地使用-->
<script src="js/annyang.min.js" type="text/javascript" charset="utf-8"></script>
<!--cdn方式使用-->
<script src="https://www.talater.com/annyang.min.js" type="text/javascript" charset="utf-8"></script>
然后我们就能够在js里使用该类库了,開始之前我们须要推断annyang对象是否存在。
// 首先推断 annyang对象是否存在
if (annyang) {
// 语音识别命令推断 }
else{
// 错误提示信息 }
annyang通过设置命令、语音识别匹配命令的方式的进行工作,详细的使用代码例如以下。
// 首先推断 annyang对象是否存在
if (annyang) {
// 语音识别命令推断 // 定义命令
var commands = {
'go': function() {
window.location.href="http://blog.csdn.net/whqet/";
},
}; //设置设别语言
annyang.setLanguage('zh-cn');
//打开调试
//annyang.debug('on');
// 加入命令
annyang.addCommands(commands); // 启动语音识别,也能够绑定在事件上
annyang.start();
}else{
// 错误提示信息
}
annyang的基本使用就这样,我们来看看今天的这个tab,详细的实现步骤例如以下。
html
<ul class="tabs">
<li class="active" rel="tab1">新闻</li>
<li rel="tab2">通知</li>
<li rel="tab3">公告</li>
<li rel="tab4">备注</li>
</ul>
<div class="tab_container">
<div id="tab1" class="tab_content">
<h2>新闻</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac metus augue.</p>
</div>
<!-- #tab1 -->
<div id="tab2" class="tab_content">
<h2>通知</h2>
<p>Nunc dui velit, scelerisque eu placerat volutpat, dapibus eu nisi. Vivamus eleifend vestibulum odio non vulputate.</p>
</div>
<!-- #tab2 -->
<div id="tab3" class="tab_content">
<h2>公告</h2>
<p>Nulla eleifend felis vitae velit tristique imperdiet. Etiam nec imperdiet elit. Pellentesque sem lorem, scelerisque sed facilisis sed, vestibulum sit amet eros.</p>
</div>
<!-- #tab3 -->
<div id="tab4" class="tab_content">
<h2>备注</h2>
<p>Integer ultrices lacus sit amet lorem viverra consequat. Vivamus lacinia interdum sapien non faucibus. Maecenas bibendum, lectus at ultrices viverra, elit magna egestas magna, a adipiscing mauris justo nec eros.</p>
</div>
<!-- #tab4 -->
</div>
<!-- .tab_container -->
css
ul.tabs {
margin: 0;
padding: 0;
float: left;
list-style: none;
height: 32px;
border-bottom: 1px solid #333;
width: 100%;
}
ul.tabs li {
float: left;
margin: 0;
cursor: pointer;
padding: 0px 21px;
height: 31px;
line-height: 31px;
border-top: 1px solid #333;
border-left: 1px solid #333;
border-bottom: 1px solid #333;
background-color: #666;
color: #ccc;
overflow: hidden;
position: relative;
}
.tab_last {
border-right: 1px solid #333;
}
ul.tabs li:hover {
background-color: #ccc;
color: #333;
}
ul.tabs li.active {
background-color: #fff;
color: #333;
border-bottom: 1px solid #fff;
display: block;
}
.tab_container {
border: 1px solid #333;
border-top: none;
clear: both;
float: left;
width: 100%;
background: #fff;
overflow: auto;
}
.tab_content {
padding: 20px;
}
js,这里用到了jquery,annyang
$(document).ready(function(){
//普通tab,单击控制
$(".tab_content").hide();
$(".tab_content:first").show();
$('ul.tabs li').last().addClass("tab_last");
$("ul.tabs li").click(function() {
$(".tab_content").hide();
$(".tab_content").eq($(this).index()).show();
$("ul.tabs li").removeClass("active");
$(this).addClass("active");
});
// 语音控制,首先推断 annyang对象是否存在。
if (annyang) {
// 定义语音控制命令里使用的函数,切换tab
var showTab=function(i){
$(".tab_content").hide();
$(".tab_content").eq(i).show();
$("ul.tabs li").removeClass("active");
$("ul.tabs li").eq(i).addClass("active");
};
// 定义命令
var commands = {
'新闻': function(){showTab(0)},
'通知': function(){showTab(1)},
'公告': function(){showTab(2)},
'备注': function(){showTab(3)},
};
// 设置语言,默觉得en
annyang.setLanguage('zh-cn');
// 可选设置,调试功能打开,建议开发阶段打开
annyang.debug();
// 加入命令
annyang.addCommands(commands);
// 開始侦听annyang,也能够绑定在事件上
annyang.start();
}
})
----------------------------------------------------------
前端开发whqet,关注web前端开发,分享相关资源,欢迎点赞,欢迎拍砖。
---------------------------------------------------------------------------------------------------------
语音控制的tab选项卡的更多相关文章
- 工作当中实际运用(1)——tab选项卡
不废话 直接上代码: tab选项卡 window.onload=function(){ var titles= document.getElementById('header-dh').getElem ...
- 微信小程序-滚动Tab选项卡
前言:今天呢 给大家详细讲解一下滚动Tab选项卡:左右可滑动切换的效果,希望对大家做项目时候有用! 以前也遇到过这个,但是没有做记录.转载来源于:https://www.jianshu.com/p/9 ...
- 【Little Demo】左右按钮tab选项卡双切换
通过前一篇文章 从简单的Tab标签到Tab图片切换 的说明,相关效果也就可以实现了. 1.左右按钮tab选项卡双切换 很明显,左右两个按钮是 absolute 布局,另外就是内容部分和Tab标签部分. ...
- 注重结构、语义、用户体验的Tab选项卡
效果如下图所示: HTML code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...
- Ionic入门七:ionic tab(选项卡)
ionic tab(选项卡) 是水平排列的按钮或者链接,用以页面间导航的切换.它可以包含文字和图标的组合,是一种移动设备上流行的导航方法. 1.基本用法 以下选项卡容器使用了 tabs 类,每个选项卡 ...
- iOS开发-iPad侧边栏Tab选项卡切换
Android中习惯了叫侧边栏,iOS中如果不习惯侧边栏称呼的话可以叫dock,侧边栏的切换,类似于Android中的底部导航栏的切换,iPad尺寸大了一些,导航的栏目放在侧边会显示的更好耐看一些.选 ...
- jQuery 显示与隐藏 tab选项卡
方法一:使用display样式:block.none来控制文本的显示与隐藏 <div class="explain_text"> 移动互联网为企业提供了连接用户的新方式 ...
- ionic-CSS:ionic tab(选项卡)
ylbtech-ionic-CSS:ionic tab(选项卡) 1.返回顶部 1. ionic tab(选项卡) ionic tab(选项卡) 是水平排列的按钮或者链接,用以页面间导航的切换.它可以 ...
- 在iPhone上同时关闭语音控制和siri的方法
分享 步骤及要点:1.在设置里打开siri.语音控制就自动关闭了.2.在siri里的"仅语言拨号"语言项里选择"土耳其文"或者"阿拉伯文". ...
随机推荐
- 浅谈ListBox控件,将对象封装在listBox中,在ListBox中显示对象中某个属性,在ListBox中移除和移动信息
大家好,俗称万事开头难,不经历风雨,怎能见彩虹.在此小编给大家带来一个自己练习的小实例,希望与大家一起分享与交流.下面进入应用场景,从SQL2008数据库取出数据,给ListBox赋值在界面并显示出来 ...
- .net中String是引用类型还是值类型 以及 C#深层拷贝浅层拷贝
http://www.cnblogs.com/yank/archive/2011/10/24/2204145.html http://www.cnblogs.com/zwq194/archive/20 ...
- 实现windows和linux的NFS交互
说明:本文是Omni-NFS-X Windows与Linux间通讯的另一种方式和在windows中配置使用NFS客户端的杂交篇 概述 windows/winnt4.0/win2000与Linux/Fr ...
- [MVC] WebSecurity在VS2013中不识别
使用VS2013创建了MVC4项目以后,在filters中添加了类InitializeSimpleMembershipAttribute ,不能识别UserContext和WebSecurity,发现 ...
- PYTHON文本处理指南之日志LOG解析
处理特定字段的内容,并指指定条件输出. 注意代码中用一个方法列表,并且将方法参数延后传递. GOOGLE作过PYTHON代码的水平,就是不一样呀. 希望能学到这种通用的技巧. 只是,英文PDF看起来有 ...
- 如何修改Ubuntu双系统的默认开机启动项
转自:http://jingyan.baidu.com/article/ed15cb1b05d0311be369818a.html 对 于安装Ubuntu系统和windows系统(windows xp ...
- vim下如何删除某行之后的所有行
使用dG进行删除 在命令模式下将光标置于要删除的起始行,然后依次输入d,G
- MYSQL常用命令集合
1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqld ...
- 【HDOJ】2279 File Search Tool
显然适用字典树建树,串长和模式串都很小,所以直接递归搜索.同时,适用bk标记当前的查询次数(排除不同模式的多次查询成功,如*t*).需要主要的是,居然存在同名文件!!!. /* 2279 */ #in ...
- Linux Kernel TUNSETIFF释放后重用本地拒绝服务漏洞(CVE-2013-4343)
漏洞版本: Linux kernel <= 3.11 漏洞描述: BUGTRAQ ID: 62360 CVE(CAN) ID: CVE-2013-4343 Linux Kernel是Linux操 ...