Valor variable Javascript según navegador

erdanblo

Pués tengo un código javascript y me gustaria saber como hacer para que segun el navegador tenga un valor u otro:

<script>

oCMenu=new makeCM("oCMenu") //Making the menu object. Argument: menuname

//Menu properties
oCMenu.pxBetween=0
oCMenu.fromLeft=8
oCMenu.fromTop=56
oCMenu.rows=0
oCMenu.menuPlacement="left"

:/ como podria ponerlo?

pd. Lo de en negrilla es lo que quiero que cambie según el navegador... ¿ideas?

guner

function makeCM(v)
{
&nbsp; &nbsp; //Menu properties
&nbsp; &nbsp; this.pxBetween = 0;
&nbsp; &nbsp; this.fromLeft = 8;
&nbsp; &nbsp; this.fromTop = this.set_fromTop();
&nbsp; &nbsp; this.rows = 0;
&nbsp; &nbsp; this.menuPlacement = "left";
&nbsp; &nbsp;
&nbsp; &nbsp; this.set_fromTop = function fromTop()
&nbsp; &nbsp; {
&nbsp; &nbsp; &nbsp; &nbsp; switch (navigator.appName) {
&nbsp; &nbsp; &nbsp; &nbsp; case '':
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return 21;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break;
&nbsp; &nbsp; &nbsp; &nbsp; // ...
&nbsp; &nbsp; &nbsp; &nbsp; }
&nbsp; &nbsp; }
}


oCMenu=new makeCM("oCMenu") //Making the menu object. Argument: menuname

Podría valerte, ahora tendrías que investigar los nombres de cada navegador, ob buscar algo ya hecho.
Como toda la función principal es el constructor podrías incluso ignorar la función objeto.set_fromTop y hacerlo directamente con el switch

La forma de ordenar toda la "clase" es una mera formalidad.

erdanblo

Dificil de digerir es, me da que para mañana lo veo...

if (navigator.appName.indexOf('MSIE') != -1) {
oCMenu.fromTop=56; // valor para IE
} else {
oCMenu.fromTop=34; // valor para Mozilla
}

Eso, no me vale _________, me lo acaban de decir en Domestika.

erdanblo

http://www.domestika.org/foros/viewtopic.php?p=329726#329726

:D

EnZo

yo uso esto para diferenciar un navegador u otro

if (navigator.appName == 'Netscape') oCMenu.fromTop=34;
else oCMenu.fromTop=56;

o como yo lo haria en tu caso:

oCMenu.fromTop = (navigator.appName == 'Netscape') ? 34 : 56;

Crawler

perdón que me vaya un poco por los cerros de úbeda:
Con esto pretendes tener el tamaño del menu (barra de arriba) del explorador en si?
O solo posicionar tu objeto menu en una posicion determinada?

erdanblo

No es nada de eso, es una contribución de oscommerce, y por arte de magia se me descuadro... entonces me puse algo nervioso... y lo primero que se me ocurrio.

Lo gracioso, es que al rato se me ha puesto bien de nuevo, yo me parto con el rollo este de los navegadores.

Usuarios habituales

  • erdanblo
  • Crawler
  • EnZo
  • guner