Предупреждение Javascript блокирует страницу в IOS Chrome после использования файлового ввода - PullRequest
0 голосов
/ 08 марта 2019

Это проблема с Chrome или я что-то не так делаю? Я заметил, что если я использую элемент ввода файла, чтобы отобразить приглашение браузера файлов / камеры, а затем добавлю что-то, что вызовет предупреждающее сообщение, оно заблокирует всю страницу, заставляя меня убить приложение, чтобы все заработало снова. Вот простой jsfiddle, который показывает проблему:

https://jsfiddle.net/etc4bxpq/

HTML:

<input type="file">
<button id="btn">Click me</button>

JS:

document.querySelector('#btn').addEventListener('click', event => {
  alert(1);
});

Нажмите на ввод файла, затем нажмите на кнопку Click Me. Предупреждение не сработает, и страница заблокируется. Кажется, это происходит только с Chrome на IOS. Safari, кажется, работает просто отлично.

1 Ответ

1 голос
/ 26 марта 2019

Имеет ту же ошибку с теми же условиями.Я попытался обернуть свои предупреждения и приглашения с помощью функции setTimeout, как это предлагали некоторые, но у меня это не сработало, попытался поместить ввод на другую страницу и вызвать его внутри iframe, также у меня не получилось.Единственное решение, которое мне подходит, - это использовать модальные оповещения вместо нативного JavaScript-оповещения и функции подсказки.Также, если вы откроете меню настроек Chrome и закроете его, скрипт продолжит выполнение, что очень странно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...