Можно ли проверить, поддерживает ли браузер / ОС пользователя данный тип ссылки, используя JavaScript? - PullRequest
5 голосов
/ 16 февраля 2010

Можно ли проверить, поддерживает ли пользовательская ОС / браузер заданную схему URL, используя javascript (или что-то еще)?

Например, mailto: не настраивается на компьютере большинства пользователей, которые используют только веб-почту. Можно ли каким-то образом отловить попытки щелкнуть ссылку «mailto» и вызвать более описательное объяснение, чем сообщение об ошибке браузера?

Ответы [ 2 ]

2 голосов
/ 16 февраля 2010

В общем случае - я так не думаю.

В конкретном случае mailto: - нет.

Чтобы решить проблему, которую вы должны описать, вам нужно знать, есть ли у пользователя настроенный почтовый клиент, а не если браузер поддерживает mailto :. Большинство браузеров поддерживают mailto :, и если у пользователя нет настроенного клиента - он все еще «работает» (запуская почтовый клиент и предлагая пользователю настроить его).

1 голос
/ 16 февраля 2010

Можно ли каким-то образом отловить попытки щелкнуть ссылку mailto и вызвать более подробное объяснение, чем сообщение об ошибке браузера?

Я не знаюНе знаю, что вы можете определить, поддерживает ли браузер mailto: ссылки.Но что касается присоединения логики к ссылкам mailto, вы можете переключаться между ссылками на странице и проверять их значение href.Если он начинается с «mailto:», вы можете прикрепить всплывающее окно после нажатия на него.

var maillinks = document.getElementsByTagName("a");
var (var i = 0; i < maillinks.length; i++) {
  var currentlink = maillinks[i];
  if (currentlink.href.substring(0,7) === "mailto:") {
    alert("Sorry. These aren't allowed.");
    return false;
  }
}

Единственное реальное решение, которое я могу придумать для решения этой проблемы, - это разместить свою собственную страницу контактов, предоставив небольшую форму, которуюПользователь может отправить.

...