JS实现调用本地摄像头功能示例


Posted in Javascript onMay 18, 2018

本文实例讲述了JS实现调用本地摄像头功能。分享给大家供大家参考,具体如下:

今天学习了一下js调用本地摄像头,其实是实现不是很麻烦,下面是代码部分,连接上Tomcat服务器,然后再到网页上打开即可以看到效果了。。快来玩一下吧!

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
<style>
video {
 border: 1px solid #ccc;
 display: block;
 margin: 0 0 20px 0;
 float:left;
}
canvas {
 margin-top: 20px;
 border: 1px solid #ccc;
 display: block;
}
</style>
</head>
<body>
<video width="640" height="480" id="myVideo"></video>
<canvas width="640" height="480" id="myCanvas"></canvas>
<button id="myButton">截图</button>
<button id="myButton2">预览</button>
<button id="myButton3">
<a download="video.png">另存为</a>
</button>
</body>
<script>
window.addEventListener('DOMContentLoaded',function(){
var cobj=document.getElementById('myCanvas').getContext('2d');
var vobj=document.getElementById('myVideo');
getUserMedia({video:true},function(stream){
vobj.src=stream;
vobj.play();
},function(){});
document.getElementById('myButton').addEventListener('click',function(){
cobj.drawImage(vobj,0,0,640,480);
document.getElementById('myButton3').children[0].href=cobj.canvas.toDataURL("image/png");
},false);
document.getElementById('myButton2').addEventListener('click',function(){
window.open(cobj.canvas.toDataURL("image/png"),'_blank');
},false);
},false);
function getUserMedia(obj,success,error){
if(navigator.getUserMedia){
getUserMedia=function(obj,success,error){
navigator.getUserMedia(obj,function(stream){
success(stream);
},error);
}
}else if(navigator.webkitGetUserMedia){
getUserMedia=function(obj,success,error){
navigator.webkitGetUserMedia(obj,function(stream){
var _URL=window.URL || window.webkitURL;
success(_URL.createObjectURL(stream));
},error);
}
}else if(navigator.mozGetUserMedia){
getUserMedia=function(obj,success,error){
navigator.mozGetUserMedia(obj,function(stream){
success(window.URL.createObjectURL(stream));
},error);
}
}else{
return false;
}
return getUserMedia(obj,success,error);
}
</script>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
May 16 Javascript
JavaScript中具名函数的多种调用方式总结
Nov 08 Javascript
jQuery 选择器详解
Jan 19 Javascript
Bootstrap布局方式详解
May 27 Javascript
JavaScript的兼容性与调试技巧
Nov 22 Javascript
Javascript中的神器——Promise
Feb 08 Javascript
jQuery实现基本淡入淡出效果的方法详解
Sep 05 jQuery
cnpm加速Angular项目创建的方法
Sep 07 Javascript
微信小程序动态增加按钮组件
Sep 14 Javascript
vue基础之data存储数据及v-for循环用法示例
Mar 08 Javascript
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
Nov 04 Javascript
weui上传多图片,压缩,base64编码的示例代码
Jun 22 Javascript
React全家桶环境搭建过程详解
May 18 #Javascript
vue单页开发父子组件传值思路详解
May 18 #Javascript
Node.js Buffer用法解读
May 18 #Javascript
从零开始搭建webpack+react开发环境的详细步骤
May 18 #Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
May 18 #Javascript
webpack4 css打包压缩问题的解决
May 18 #Javascript
微信小程序实现长按删除图片的示例
May 18 #Javascript
You might like
PHP的面试题集,附我的答案和分析(一)
2006/11/19 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
PHP使用Pear发送邮件(Windows环境)
2016/01/05 PHP
PHP 根据key 给二维数组分组
2016/12/09 PHP
搭建自己的PHP MVC框架详解
2017/08/16 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
2017/09/16 PHP
php读取本地json文件的实例
2018/03/07 PHP
PHP实现常用排序算法的方法
2020/02/05 PHP
JavaScript 三种不同位置代码的写法
2009/10/25 Javascript
JQuery onload、ready概念介绍及使用方法
2013/04/27 Javascript
Javascript图片上传前的本地预览实例
2014/06/16 Javascript
JavaScript获得url查询参数的方法
2015/07/02 Javascript
jquery实现表格中点击相应行变色功能效果【实例代码】
2016/05/09 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
解决Angular.Js与Django标签冲突的方案
2016/12/20 Javascript
node中Express 动态设置端口的方法
2017/08/04 Javascript
ES6 更易于继承的类语法的使用
2019/02/11 Javascript
深入理解react 组件类型及使用场景
2019/03/07 Javascript
javascript实现手动点赞效果
2019/04/09 Javascript
Vue记住滚动条和实现下拉加载的完美方法
2020/07/31 Javascript
Vant picker 多级联动操作
2020/11/02 Javascript
python网络编程学习笔记(五):socket的一些补充
2014/06/09 Python
Python的Django框架中消息通知的计数器实现教程
2016/06/13 Python
python在每个字符后添加空格的实例
2018/05/07 Python
keras slice layer 层实现方式
2020/06/11 Python
如何用python免费看美剧
2020/08/11 Python
Python识别验证码的实现示例
2020/09/30 Python
Pandas数据分析的一些常用小技巧
2021/02/07 Python
python中@contextmanager实例用法
2021/02/07 Python
大学生创业计划书的范文
2014/01/07 职场文书
超市5.1促销活动
2014/01/15 职场文书
先进工作者获奖感言
2014/02/08 职场文书
学校元旦晚会方案
2014/02/19 职场文书
离职证明范本(5篇)
2014/09/19 职场文书
卖房授权委托书样本
2014/10/05 职场文书
计算机实训报告总结
2014/11/05 职场文书