Foros del Web » Programando para Internet » Javascript »

Ver el navegador que se usa y aplicar uno u otro estilo

Estas en el tema de Ver el navegador que se usa y aplicar uno u otro estilo en el foro de Javascript en Foros del Web. Muy buenas, que tal :D ? Bueno estoy aquí atorado. Os cuento. He encontrado un script que me identifica con que navegador estoy viendo la ...
  #1 (permalink)  
Antiguo 12/08/2010, 04:27
Avatar de Jask  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 773
Antigüedad: 18 años
Puntos: 15
Mensaje Ver el navegador que se usa y aplicar uno u otro estilo

Muy buenas, que tal :D ?

Bueno estoy aquí atorado. Os cuento. He encontrado un script que me identifica con que navegador estoy viendo la página, aquí os lo dejo.

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.  
  3. var BrowserDetect = {
  4.     init: function () {
  5.         this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
  6.         this.version = this.searchVersion(navigator.userAgent)
  7.             || this.searchVersion(navigator.appVersion)
  8.             || "an unknown version";
  9.         this.OS = this.searchString(this.dataOS) || "an unknown OS";
  10.     },
  11.     searchString: function (data) {
  12.         for (var i=0;i<data.length;i++) {
  13.             var dataString = data[i].string;
  14.             var dataProp = data[i].prop;
  15.             this.versionSearchString = data[i].versionSearch || data[i].identity;
  16.             if (dataString) {
  17.                 if (dataString.indexOf(data[i].subString) != -1)
  18.                     return data[i].identity;
  19.             }
  20.             else if (dataProp)
  21.                 return data[i].identity;
  22.         }
  23.     },
  24.     searchVersion: function (dataString) {
  25.         var index = dataString.indexOf(this.versionSearchString);
  26.         if (index == -1) return;
  27.         return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
  28.     },
  29.     dataBrowser: [
  30.         {
  31.             string: navigator.userAgent,
  32.             subString: "Firefox",
  33.             identity: "Firefox"
  34.         },
  35.         {
  36.             string: navigator.userAgent,
  37.             subString: "Gecko",
  38.             identity: "Mozilla",
  39.             versionSearch: "rv"
  40.         },
  41.         {       // for older Netscapes (4-)
  42.             string: navigator.userAgent,
  43.             subString: "Mozilla",
  44.             identity: "Netscape",
  45.             versionSearch: "Mozilla"
  46.         }
  47.     ],
  48.     dataOS : [
  49.         {
  50.             string: navigator.platform,
  51.             subString: "Win",
  52.             identity: "Windows"
  53.         },
  54.         {
  55.             string: navigator.platform,
  56.             subString: "Mac",
  57.             identity: "Mac"
  58.         },
  59.  
  60.     ]
  61.  
  62. };
  63. BrowserDetect.init();

La cosa es que me gustaría que cuando el navegador sea firefox de mac aplicara un estilo, si no lo deje tal cual lo tengo. He encontrado esto pero no se muy bien como aplicarlo ya que mis conocimientos de javascript son casi nulos:

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. if ( 'Mac' == substring( self.navigator.platform, 0, 3 )  &&  false !== strpos( self.navigator.userAgent, 'Firefox' ) ){          
  3.     // this is Firefox on Mac so build that class here
  4.     document.styleSheets[0].insertRule("body{background-color:red}", 0);
  5.     }
  6. </script>


A ver si alguno me puede echar una mano ya que no sabría como resolver este problemilla, solo me falta eso para que la web sea visible en ie, ff de pc y ff de mac xD !! que es con los que he tenido problemas.

Desde ya muchas gracias y un saludo :D !
__________________
Os iusti meditabitur sapientiam
Si te he ayudado, por qué no un poquito de Karma :) ?

Etiquetas: estilo, ver, navegadores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:36.