É possível testar se o navegador/OS do usuário suporta um determinado tipo de link usando JavaScript?
-
20-09-2019 - |
Pergunta
É possível testar se o sistema operacional/navegador de um usuário suporta um determinado esquema de URL usando JavaScript (ou qualquer outra coisa)?
Por exemplo, Mailto: não está configurado na maioria dos computador do usuário que usa apenas o webmail. Seria possível de alguma forma pegar as tentativas de clicar em um link para correio e exibir uma explicação mais descritiva do que a mensagem de erro do navegador?
Solução
Seria possível de alguma forma pegar as tentativas de clicar em um link para correio e exibir uma explicação mais descritiva do que a mensagem de erro do navegador?
Não sei se você pode determinar se um navegador suporta Mailto: Links. Mas, quanto a anexar a lógica aos links de e -mails, você pode percorrer os links na página e testar seus href
valor. Se começar com "Mailto", você poderá anexar um pop -up ao clicar nele.
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;
}
}
A única solução real que posso pensar nesse problema é hospedar sua própria página de contato, fornecendo um pequeno formulário que o usuário pode enviar.
Outras dicas
No caso geral - acho que não.
No caso específico do Mailto: - no.
Para resolver o problema que você precisa descrever, você precisa saber se o usuário tem um cliente de email configurado, não se o navegador suportar o Mailto:. A maioria dos navegadores suporta Mailto:, e se o usuário não tiver um cliente configurado - ele ainda 'funciona' (iniciando o cliente de email e levando o usuário a configurá -lo).