HTML 5调用摄像头并进行拍照 (测试火狐能行)

简介:
  1. 参考网址

    http://blog.csdn.net/guoquanyou/article/details/51802849


    http://blog.csdn.net/dengmingrun/article/details/17374273(未测试)

<!DOCTYPE html>  <html lang="en">  <head>  <meta charset="UTF-8">  <title>Document</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 id="video" width="500" height="400" autoplay></video>      <canvas id="canvas" width="500" height="400"></canvas>      <button id="snap">拍照</button>      <script type="text/javascript">          var context = canvas.getContext("2d");          //当DOM树构建完成的时候就会执行DOMContentLoaded事件          window.addEventListener("DOMContentLoaded", function() {              //获得Canvas对象              var canvas = document.getElementById("canvas");              //获得video摄像头区域              var video = document.getElementById("video");              var videoObj = {                  "video" : true              };              var errBack = function(error) {                  console.log("Video capture error: ", error.code);              };              //获得摄像头并显示到video区域              if (navigator.getUserMedia) { // Standard                  navigator.getUserMedia(videoObj, function(stream) {                      video.src = stream;                      video.play();                  }, errBack);              } else if (navigator.webkitGetUserMedia) { // WebKit-prefixed                  navigator.webkitGetUserMedia(videoObj, function(stream) {                      video.src = window.webkitURL.createObjectURL(stream);                      video.play();                  }, errBack);              } else if (navigator.mozGetUserMedia) { // Firefox-prefixed                  navigator.mozGetUserMedia(videoObj, function(stream) {                      video.src = window.URL.createObjectURL(stream);                      video.play();                  }, errBack);              }          }, false);          // 触发拍照动作          document.getElementById("snap").addEventListener("click", function() {              context.drawImage(video, 0, 0, 640, 480);          });      </script>  </body>  </html>  



本文转自 曦羽  51CTO博客,原文链接:http://blog.51cto.com/exist/1959679

相关文章
|
7月前
|
JavaScript
html使用vue模板、html引入vue.js-测试demo
html使用vue模板、html引入vue.js-测试demo
|
7月前
|
移动开发 HTML5
HTML5 图片上传预览(调用摄像头、文件)demo效果示例(整理)
HTML5 图片上传预览(调用摄像头、文件)demo效果示例(整理)
|
9月前
|
数据库
HTML 设置通过模糊查询可以使表格某行数据显示高亮
HTML 设置通过模糊查询可以使表格某行数据显示高亮
62 0
|
JavaScript Android开发 iOS开发
html通过js调用ios或android代码
html通过js调用ios或android代码
57 0
table标签经典案例,综合使用行合并与列合并实现html网页表格【2020网页综合笔记03】
table标签经典案例,综合使用行合并与列合并实现html网页表格【2020网页综合笔记03】
234 0
table标签经典案例,综合使用行合并与列合并实现html网页表格【2020网页综合笔记03】
|
前端开发 测试技术 Python
python接口自动化(二十八)--html测试 报告——下(详解)
上一篇我们批量执行完用例后,已经生成的测试报告是生成 HTML 格式的。但是我们可以看出那个官方的测试报告既不美观也不大方,我们这里需要优化一下,优化的让人赏心悦目,就和看到一个美女一样看了一眼,忍不住回头再多看一眼 - _ - 并且把上一篇遇到的问题列举解决一下。
238 0
python接口自动化(二十八)--html测试 报告——下(详解)
|
XML JavaScript 前端开发
具备spring环境的测试头注解;xml 规则;JavaScript:改变 HTML 内容案例
具备spring环境的测试头注解 具备spring环境的测试头注解 test
119 1
具备spring环境的测试头注解;xml 规则;JavaScript:改变 HTML 内容案例
|
JavaScript Android开发 iOS开发
html通过js调用ios或android代码
html通过js调用ios或android代码
|
JSON JavaScript Java
创建项目和HTML页面进行代码测试JSON
创建项目和HTML页面进行代码测试JSON
79 0
创建项目和HTML页面进行代码测试JSON
html+css实战87-优先级-基本测试
html+css实战87-优先级-基本测试
97 0
html+css实战87-优先级-基本测试