Controllo browser e modifica script

A-Lex

Nuovo Utente
13 Mar 2006
8
0
0
Orne - France
Ciao a tutti :byebye:
mi sono avventurato nei meandri del javascript da pochissimo e ovviamente mi sono scontrato con le interpretazioni fantasiose dell'explorer :incazz2: .
Ho trovato su pro.html.it uno script che mediante un controllo su (rispettivamente) document.layers, document.all e document.getElementById rileva i principali 3 in uso (NN4, EI e NN6). Ho applicato il suddetto ad un altro script che avevo leggermente modificato e che funzionava.
Il risultato è che ora funziona, ma come se il controllo non lo facesse... E' come se non avessi scritto nulla, eppure credo di aver rispettato la sintassi e quant'altro...
Domanda: posso postare il codice? Come devo fare per confrontarmi con qcuno? :confused:
Grazie!
ALex
 

A-Lex

Nuovo Utente
13 Mar 2006
8
0
0
Orne - France
Provo a dettagliare meglio il problema: in effetti senza codice è un po' difficile. :crying:
Cronistoria:
Ho trovato uno script (Bak2Top di MaxxBlade) che permette di effettuare il "salto" alla top page sfruttando un'immagine che compare una volta che inizia lo scroll verso il basso e che segue a lato a distanza costante dal bordo inferiore.
L'ho modificato leggermente in modo da avere la doppia immagine (dx e sx) e in modo che, centrando la pagina, le img stiano nella stessa posizione relativa a seconda della risoluzione usata.
Il problema è che se lo testo su IE va tutto bene, mentre su Mozilla mi sposta le img di 8 px a dx, uscendo dalla pagina (dx) e entrando nel testo (sx). :eek: :gun: .
Ho provato ad usare lo script proposto su pro.html.it per riconoscere il browser e dare uno scarto differente a Mozilla, ma è come se non avessi scritto nulla. Qualcuno mi può aiutare, per favore? Ecco lo script:
Codice:
/* btts = delay of img blinking 
   bttx = width of div/main win
   btty = img height from bottom
   bttc = img path	bttcx = img path for ie
   widimg = img width	widimgdx = IE-Moz difference  */

var btts=150, bttx=800, btty=150, bttcx='<img src="../Imgs/phenix_up.gif" border="0">', bttc='<img src="../Imgs/phenix_up.png" border="0">', widimg=40, widimgdx=8; 

function winWid(){ return (ns4||ns6)?window.innerWidth:document.body.clientWidth; }
function winHei(){ return (ns4||ns6)?window.innerHeight:document.body.clientHeight; }
function winOfy(){ return (ns4||ns6)?window.pageYOffset:document.body.scrollTop; }

// Recognization of browser to apply the correct parameters (img rh)

if (document.layers)
  { //Netscape 4.x
  function mtoplink(){ with(eval(bttll)){ left=(winOfy()>0)?((winWid()+bttx)/2)-widimg:-500; top=(winOfy()>0)?winHei()-btty+winOfy():-500; } setTimeout('mtoplink()',btts); };
  function toplink(){ rt=(!ns4)?'<div id="bttl" style="position:absolute;">':'<layer name="bttl">';
	rt+=(!ns4)?'<a style="cursor: '+hand+'" onclick':'<a href"'; rt+='="java script:scrollTo(0,0)">';
	rt+=bttcx; rt+=(!ns4)?'</a></div>':'</a></layer>'; document.write(rt); mtoplink(); };
  }
  else if (document.all)
  { // Explorer
  function mtoplink(){ with(eval(bttll)){ left=(winOfy()>0)?((winWid()+bttx)/2)-widimg:-500; top=(winOfy()>0)?winHei()-btty+winOfy():-500; } setTimeout('mtoplink()',btts); };
  function toplink(){ rt=(!ns4)?'<div id="bttl" style="position:absolute;">':'<layer name="bttl">';
	rt+=(!ns4)?'<a style="cursor: '+hand+'" onclick':'<a href"'; rt+='="java script:scrollTo(0,0)">';
	rt+=bttcx; rt+=(!ns4)?'</a></div>':'</a></layer>'; document.write(rt); mtoplink(); };
  }
  else if (document.getElementById)
  { //Netscape 6.x
  function mtoplink(){ with(eval(bttll)){ left=(winOfy()>0)?((winWid()+bttx)/2)-(widimg+widimgdx):-500; top=(winOfy()>0)?winHei()-btty+winOfy():-500; } setTimeout('mtoplink()',btts); };
  function toplink(){ rt=(!ns4)?'<div id="bttl" style="position:absolute;">':'<layer name="bttl">';
	rt+=(!ns4)?'<a style="cursor: '+hand+'" onclick':'<a href"'; rt+='="java script:scrollTo(0,0)">';
	rt+=bttc; rt+=(!ns4)?'</a></div>':'</a></layer>'; document.write(rt); mtoplink(); };
  }

// Recognization of browser to apply the correct parameters (img lh)

if (document.layers)
  { //Netscape 4.x
  function mtoplinklex(){ with(eval(bttlllex)){ left=(winOfy()>0)?((winWid()-bttx)/2)-widimg:-500; top=(winOfy()>0)?winHei()-btty+winOfy():-500; } setTimeout('mtoplinklex()',btts); };
  function toplinklex(){ rt=(!ns4)?'<div id="bttllex" style="position:absolute;">':'<layer name="bttllex">';
	rt+=(!ns4)?'<a style="cursor: '+hand+'" onclick':'<a href"'; rt+='="java script:scrollTo(0,0)">';
	rt+=bttcx; rt+=(!ns4)?'</a></div>':'</a></layer>'; document.write(rt); mtoplinklex(); };
  }
  else if (document.all)
  { // Explorer
  function mtoplinklex(){ with(eval(bttlllex)){ left=(winOfy()>0)?((winWid()-bttx)/2):-500; top=(winOfy()>0)?winHei()-btty+winOfy():-500; } setTimeout('mtoplinklex()',btts); };
  function toplinklex(){ rt=(!ns4)?'<div id="bttllex" style="position:absolute;">':'<layer name="bttllex">';
	rt+=(!ns4)?'<a style="cursor: '+hand+'" onclick':'<a href"'; rt+='="java script:scrollTo(0,0)">';
	rt+=bttcx; rt+=(!ns4)?'</a></div>':'</a></layer>'; document.write(rt); mtoplinklex(); };
  }
  else if (document.getElementById)
  { //Netscape 6.x
  function mtoplinklex(){ with(eval(bttlllex)){ left=(winOfy()>0)?((winWid()-bttx)/2)-widimgdx:-500; top=(winOfy()>0)?winHei()-btty+winOfy():-500; } setTimeout('mtoplinklex()',btts); };
  function toplinklex(){ rt=(!ns4)?'<div id="bttllex" style="position:absolute;">':'<layer name="bttllex">';
	rt+=(!ns4)?'<a style="cursor: '+hand+'" onclick':'<a href"'; rt+='="java script:scrollTo(0,0)">';
	rt+=bttc; rt+=(!ns4)?'</a></div>':'</a></layer>'; document.write(rt); mtoplinklex(); };
  }
var ns4=(document.layers)?1:0;
var ie4=(document.all)?1:0;
var ns6=(document.getElementById&&!document.all)?1:0;
var hand=(ie4)?'hand':'pointer';
if(ie4)	bttll="document.all['bttl'].style";
if(ns4) bttll="document.layers['bttl']";
if(ns6) bttll="document.getElementById('bttl').style";
if(ie4)	bttlllex="document.all['bttllex'].style";
if(ns4) bttlllex="document.layers['bttllex']";
if(ns6) bttlllex="document.getElementById('bttllex').style";
toplink();
toplinklex()

Grazie veramente a chiunque mi possa dare un aiutino... :beer:

Salut!
Alex
 

A-Lex

Nuovo Utente
13 Mar 2006
8
0
0
Orne - France
Mi rispondo da solo.
Non è risolvibile a livello di script... almeno non finchè l'interpretazione dei box model viene fatta in maniera così diversa dai due browser. L'unica è riservare all'img uno spazio tale che sia sufficiente per entrambi. Lo scarto si tiene.
Ciauz! :byebye:
 
Discussioni simili
Autore Titolo Forum Risposte Data
P controllo browser sul server o in php? PHP 2
LaKanka Problema controllo diversi browser Webdesign e Grafica 3
S con cosa pubblicare il sito e controllo compatibilità browser HTML e CSS 3
M Controllo funzionalità del browser Javascript 4
M pulsante per aprire una maschera che contiene controllo schede MS Access 0
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
Z Controllo giorni MYSQL PHP 0
M Problema con controllo form in real time jQuery 6
MarcoGrazia jquery validate() controllo checkbox jQuery 2
M Controllo del codice fiscale/partita iva PHP 11
S Software windows10 per controllo contenuti web Windows e Software 6
S Controllo appuntamenti disponibili sul db PHP 5
L input (controllo se è stato modificato o no). PHP 1
W Controllo competitors serp SEO e Posizionamento 2
bubino8 [Javascript] popup di controllo elimina dopo window.print(); Javascript 0
M [MS Access] controllo valido se MS Access 8
MarkRed Come indicare, in una maschera, il primo controllo d'input, tipo "SetFocus" jQuery 9
C [PHP] Controllo <select> comportamento anomalo PHP 2
elpirata [Javascript] Controllo campi required non effettuato Javascript 2
A [PHP] Controllo nome utente form di registrazione PHP 4
L [PHP] controllo dimensione immagine per il resize PHP 2
M [ASP] Upload file da form controllo Classic ASP 5
P [PHP] Controllo al checkbox privacy PHP 6
S [MySQL] Controllo dati di una tabella in tempo reale MySQL 0
T [php] controllo su estensione file PHP 7
M [PHP] Script per controllo disponibilitá negozio in citta PHP 4
I Recupero accesso pannello di controllo dominio Leggi, Normative e Fisco 2
F Controllo dati sui campi di input tramite php PHP 1
R [MS Access] CONDIZIONE CHE CAMBIA PROPRIETA' DI UNA CONTROLLO MS Access 7
M [PHP] Dubbio controllo IF PHP 15
M [PHP] Controllo campo cap con trattino oltre ai numeri PHP 3
Fede72 Controllo registrazioni PHP Mysql PHP 5
L jquery e json controllo valori da determinate chiavi - keys jQuery 0
T [Javascript] un controllo con checkbox che non... controlla... Javascript 3
bubino8 [PHP] Controllo Log e Modifiche Utenti PHP 5
P [PHP] Realizzare un controllo accessi cantiere, problema lettore Qrcode... PHP 0
M [PHP] Controllo inserimento in tempo reale PHP 0
M [PHP] Help: controllo valori inseriti in un campo PHP 1
M [PHP] Impedire di digitare determinati caratteri nell’input (controllo in tempo reale) PHP 4
giancadeejay [PHP] Controllo inserimento tot caratteri PHP 5
giancadeejay [PHP] Controllo su quantita' di caratteri inseriti, in colonna db PHP 5
F [Javascript] Controllo stringa jquery Javascript 4
B [MySQL] CONTROLLO SE CAMPO1 > CAMPO2 MySQL 0
CristianB72 [PHP] Controllo sintassi indirizzo email non funziona PHP 13
M [PHP] controllo inserimento dati un un form PHP 4
ANDREA20 [PHP] Controllo email se e valida PHP 5
elpirata [Javascript] Controllo su campo ricerca data Javascript 1
P scavalca il controllo dello username PHP 1
A problema controllo Javascript 2
C controllo con metodo text non funzionante Javascript 7

Discussioni simili