ES6 - Navegadores
É importante entender as diferenças entre os diferentes navegadores para lidar com cada um da maneira esperada. Portanto, é importante saber em qual navegador sua página da Web está sendo executada. Para obter informações sobre o navegador em que sua página da Web está sendo executada, use o objeto navegador interno.
Propriedades do navegador
Existem várias propriedades relacionadas ao Navigator que você pode usar em sua página da web. A seguir está uma lista de nomes e sua descrição.
Sr. Não | Descrição da Propriedade |
---|---|
1 | appCodeName Esta propriedade é uma string que contém o nome do código do navegador, Netscape para Netscape e Microsoft Internet Explorer para Internet Explorer. |
2 | appVersion Esta propriedade é uma string que contém a versão do navegador, bem como outras informações úteis, como idioma e compatibilidade. |
3 | language Esta propriedade contém a abreviatura de duas letras para o idioma que é usado pelo navegador. Apenas Netscape. |
4 | mimTypes[] Esta propriedade é um array que contém todos os tipos MIME suportados pelo cliente. Apenas Netscape. |
5 | platform[] Esta propriedade é uma string que contém a plataforma para a qual o navegador foi compilado. "Win32" para sistemas operacionais Windows de 32 bits. |
6 | plugins[] Esta propriedade é uma matriz que contém todos os plug-ins que foram instalados no cliente. Apenas Netscape. |
7 | userAgent[] Esta propriedade é uma string que contém o nome do código e a versão do navegador. Este valor é enviado ao servidor de origem para identificar o cliente. |
Métodos de navegação
Existem vários métodos específicos do Navigator. Aqui está uma lista de seus nomes e descrições.
Sr. Não | Métodos e Descrição |
---|---|
1 | javaEnabled() Este método determina se o JavaScript está habilitado no cliente. Se o JavaScript estiver habilitado, este método retorna verdadeiro; caso contrário, retorna falso. |
2 | plugings.refresh Este método disponibiliza plug-ins recém-instalados e preenche a matriz de plug-ins com todos os novos nomes de plug-ins. Apenas Netscape |
3 | preference(name,value) Este método permite que um script assinado obtenha e defina algumas preferências do Netscape. Se o segundo parâmetro for omitido, este método retornará o valor da preferência especificada; caso contrário, ele define o valor. Apenas Netscape |
4 | taintEnabled() Este método retorna verdadeiro se a contaminação de dados estiver habilitada; caso contrário, falso |
Detecção de navegador
O seguinte código JavaScript pode ser usado para descobrir o nome de um navegador e, portanto, uma página HTML pode ser exibida ao usuário.
<html>
<head>
<title>Browser Detection Example</title>
</head>
<body>
<script type = "text/javascript">
<!--
var userAgent = navigator.userAgent;
var opera = (userAgent.indexOf('Opera')
! = -1); var ie = (userAgent.indexOf('MSIE')
!= -1); var gecko = (userAgent.indexOf('Gecko')
! = -1); var netscape = (userAgent.indexOf('Mozilla')
! = -1); var version = navigator.appVersion;
if (opera) {
document.write("Opera based browser");
// Keep your opera specific URL here.
} else if (gecko) {
document.write("Mozilla based browser");
// Keep your gecko specific URL here.
} else if (ie) {
document.write("IE based browser");
// Keep your IE specific URL here.
} else if (netscape) {
document.write("Netscape based browser");
// Keep your Netscape specific URL here.
} else {
document.write("Unknown browser");
}
// You can include version to along with any above condition.
document.write("<br /> Browser version info : " + version );
//
-->
</script>
</body>
</html>
A seguinte saída é exibida na execução bem-sucedida do código acima.
Mozilla based browser
Browser version info : 5.0
(Windows NT 6.3; WOW64) AppleWebKit / 537.36 (KHTML, como Gecko) Chrome / 41.0.2272.101 Safari / 537.36