如何取消Chrome相机权限栏?

时间:2013-12-01 23:53:47

标签: javascript google-chrome html5-video

我有一个动态创建的html5相机视频弹出窗口,工作正常。问题是如果我在没有回答Chrome摄像头许可请求栏的情况下取消它,它会破坏html罚款,但是许可栏会保留。相机停止并且指示灯熄灭但仅刷新页面将终止许可栏。

var webcam=function()
  {
  var cam=document.createElement("canvas"),vid=document.createElement("video"),S=null;
  vid.autoplay=true;
  cam.width=640;
  cam.height=480;
  navigator.getUserMedia({video: {optional: [{minWidth:640},{minWidth:480},{minWidth:360}]}},function(stream){vid.src=(window.URL||window.mozURL||window.webkitURL).createObjectURL(stream);S=stream},function(error){console.log("error")});
  webcam.stop=function(){if(S)S.stop();vid.src=""};
  var dv=document.createElement("div");
  dv.appendChild(vid);
  return dv;
  }

如果我通过运行 webcam.stop 取消它并删除相关的html,则会关闭相机并删除视频。如果我已经回答了浏览器权限请求,则工作正常。但是在chrome中,权限请求一直持续到页面刷新。

有没有办法以编程方式删除浏览器权限栏或取消它?例如,在Firefox中,当视频执行时,权限请求会消失。

UPDATE 创建了一个jsfiddle来说明问题。 http://jsfiddle.net/CM5Tk/7/

0 个答案:

没有答案