Можливі дублікати:
Як виявити обробники протоколів браузера?
Певне програмне забезпечення (не на основі браузера) встановлює спеціальний протокол при його встановленні. Таким чином, якщо програмне забезпечення встановлено в системі, розміщуючи посилання, яке виглядає так
<a href="mycustomprotocol:///foobar">Launch the program!</a>
на веб-сторінці запускається програмне забезпечення при натисканні на нього (після виставлення попередження звичайно).
Якщо програмне забезпечення не встановлено, я хочу динамічно змінити елемент, щоб браузер не намагався його запустити.
Чи існує спосіб у javascript визначити, чи дійсний протокол? Хочеться, щоб він працював принаймні у Firefox, IE, Chrome та Safari.
Дякую
Відповіді:
1 для відповіді № 1Немає можливості JavaScript отримати доступ до файлової системи або реєстру настільних користувачів користувача для перевірки користувацького протоколу.
1 для відповіді № 2
Ви можете спробувати зафіксувати помилку в події window.onError або події a.onError, якщо вона підтримується, а потім використовувати javascript для переходу до резервного URL-адреси.
1 для відповіді № 3
Все, до чого у вас є доступ у JavaScript navigator.plugins
який підкаже, які плагіни встановлені. Проблема в цьому полягає в тому, що браузер передасть протокол в ОС для обробки, якщо він не знає, як з ним самому керувати, і ви не можете через javascript знайти всі різні обробники протоколів, встановлені в ОС.
Іншими словами: Ні ...