2017-02-07 8 views
0

Этот код работал до вчерашнего дня месяцами без проблем, но сегодня он перестает работать. Я подозреваю, что Google перестала признавать какой-то код, но я не знаю, какой из них.веб-камера на хром. До вчерашнего дня это работало (месяцы), а не сегодня, что случилось?

Хром не показывает мне никакой ошибки кода.

//<![CDATA[ 
 
window.onload=function(){ 
 
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia; 
 

 
window.URL = window.URL || window.webkitURL || window.mozURL || window.msURL; 
 

 
var start = document.querySelector('#start'), 
 
    capture = document.querySelector('#capture'), 
 
    canvas = document.querySelector('canvas'), 
 
    ctx = canvas.getContext('2d'), 
 
    video = document.querySelector('video'); 
 

 
start.addEventListener('click', function() { 
 

 
    navigator.getUserMedia({ 
 
     video: true 
 
    }, function (stream) { 
 
     var src = window.URL.createObjectURL(stream); 
 
     video.src = src; 
 
    }, function (e) { 
 
     console.log(e); 
 
    }); 
 

 
    
 

 
}, false); 
 

 
    capture.addEventListener('click', function() { 
 
     ctx.drawImage(video, 0, 0, canvas.width, canvas.height); 
 
    }, false); 
 
}//]]>
<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
 
    <title></title> 
 

 
</head> 
 

 
<body> 
 

 
<video autoplay></video> 
 
<canvas width="300" height="200"></canvas> 
 
    <button id="start">Start</button> 
 
<button id="capture">Capture</button> 
 
</body> 
 

 
</html>

+0

Вы пробовали другой браузер? –

+0

Если вы не используете 'https: //' или 'localhost', Chrome не позволит сценарию получить доступ к веб-камере. – TricksfortheWeb

+0

Да, я попробовал другой браузер, такую ​​же проблему. Я использую https: //. К моменту, когда код работает, если переместить код сценария в теги тела, но в этом случае другой скрипт (геолокализация) не работает. Очень странно. – alexiter

ответ

0

Я решил проблему следующим образом:

I Изменить "window.onload = функция() {" для "функции веб-камеры() {", а затем я вызвать функцию от «onload» в теге тела.

Теперь все работает снова.

Но я не понимаю, почему.

Смежные вопросы