Как обойти эту ошибку script5007 не может получить свойство 'getDisplayMedia' с неопределенной или нулевой ссылкой на IE? - PullRequest
0 голосов
/ 22 мая 2019

Я делаю скрипт, чтобы узнать, поддерживает ли мой браузер совместное использование экрана.Мой скрипт работает в любом браузере (Chrome, Opera, Firefox, Edge, Safari), кроме Internet Explorer, и я не знаю, в чем проблема.

Можете ли вы дать мне ответ, пожалуйста

var getDisplayMedia;
    // Screen sharing is supported by the browser 
    if (navigator.mediaDevices.getDisplayMedia || navigator.getDisplayMedia){
        getDisplayMedia = "O";
    }else {
        getDisplayMedia = "N";
    }
    console.log(getDisplayMedia);

В Chrome, Opera, Firefox, Edge, Safari он возвращает O или N. Но в IE появилась эта ошибка: script5007 не смог получить свойство 'getDisplayMedia' с неопределенной или нулевой ссылкой

Ответы [ 2 ]

1 голос
/ 22 мая 2019

Перед проверкой одного из его свойств необходимо проверить, существует ли navigator.mediaDevices.

var getDisplayMedia;
// Screen sharing is supported by the browser 
if (navigator.mediaDevices && navigator.mediaDevices.getDisplayMedia || 
    navigator.getDisplayMedia
){
    getDisplayMedia = "O";
}else {
    getDisplayMedia = "N";
}

console.log(getDisplayMedia);
1 голос
/ 22 мая 2019

Согласно разделу совместимость браузера документации MediaDevices, он не поддерживает IE.

Я предлагаю проверить navigator.userAgent для indexOf("MSIE") перед проверкой mediaDevices свойств.

...