Newsgroup: it.comp.www.html
Titolo: Conflitto con javascript

Ho notato che questa scritta:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd
">
che viene automaticamente inserita da programma con cui creo pagine web va
in conflitto con alcuno javascript (es, quello che permette di colorare la
barra di scorrimento) e solo se la elimino lo script funziona
correttamente.
Mi sapete dire perchč c'č il conflitto e per quale motivo la scritta viene
inserita?
Inoltre c'č un modo per evitare che nelle pagine venga inserita
automaticamente per evitare che debba eliminarla a mano da tutte le pagine
o quanto meno quelle che m'interessano?
Grazie a tutti e ciao!!
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 o quanto meno quelle che m'interessano?
La DTD *deve* sempre essere inserita in ogni pagina che crei. Il doctype
specifica al browser quale versione di HTML stai utilizzando (HTML:
http://www.rhadamanth.net/htmldoctype.php
, XHTML:
http://www.rhadamanth.net/xhtmldoctype.php
).
I browser più evoluti non trovando il doctype entrano in modalità quirks,
cioé attivano una modalità che permette anche ad un codice non valido
(manda appunto la DTD) di essere visualizzato al meglio.
In questo caso anche uno script magari non corretto in modalità
semi-standard o standard funziona ugualmente (anche se molto probabilmente
non su tutti i browser).
-- 
[Non siamo materia che aspetta, ma schemi che si perpetuano.]
Rhadamanth.net (
http://www.rhadamanth.net
)
FIAG (
http://www.fiag.it
)
Savona Web (
http://www.savonaweb.net
)

 Probabilmente perché lo script non è corretto.
Lo script è questo:
<script language="JavaScript1.2">
<!--
function scrollBar(line,face,theme)
	{
		if (!line||!face)
			{
				line=null;
				face=null;
				switch(theme)
					{
						case "blu":
							var line="#78AAFF";
							var face="#EBF5FF";
							break;
						case "arancio":
							var line="#FBBB37";
							var face="#FFF9DF";
							break;
						case "rosso":
							var line="#FF7979";
							var face="#FFE3DD";
							break;
						case "verde":
							var line="#00C600";
							var face="#D1EED0";
							break;
						case "neon":
							var line="#BC7E41";
							var face="#EFE0D1";
							break;
					}
			}
				with(document.body.style)
					{
						scrollbarDarkShadowColor=line;
						scrollbar3dLightColor=line;
						scrollbarArrowColor="black";
						scrollbarBaseColor=face;
						scrollbarFaceColor=face;
						scrollbarHighlightColor=face;
						scrollbarShadowColor=face;
						scrollbarTrackColor="#F3F3F3";
					}
			}
function colorBar(){
		var w = document.body.clientWidth;
		var h = document.body.clientHeight;
		var x = event.clientX;
		var y = event.clientY;
		if(x>w) scrollBar('#000080','#BFDFFF');
		else scrollBar(null,null,"neon");
	}
if (document.all){
scrollBar(null,null,"neon");
document.onmousemove=colorBar;
}
//-->
</script>
Ha qualcosa che non va? Come correggerlo??
Grazie e ciao!


 Grazie e ciao!
Prego e ciao!
-- 
Spirito Libero
Siamo tutti un po' abusivi a questo mondo...
(Non mettere il sale se vuoi rispondermi!)

 e tutto il resto si limiteranno ad ignorare quella parte di codice.
**Quello che però m'interessa: se elimino il doctype e inserisco lo script
come dici tu solo IE mostrerà le barre colorate, cmq nella visualizzazione
della pagina non succede nulla? nel senso che la pagina viene visualizzata
bene ugualmente da tutti i broswer
Cmq esistono script compatibili col doctype ... mi sa che devo chiedere
sul ng javascript!


 della pagina non succede nulla? 
[CUT]
La visualizzazione può cambiare.
La modalità standard dei browser è differente dalla modalità quirks.
Attenzione anche un inserimento errato del doctype fa entrare il browser in
modalità quirks.
Ad esempio:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0//EN" 
"DTD/xhtml1-strict.dtd"> 
Invece del corretto:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0//EN" 
"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
"> 
Nota l'URL non completo nel primo caso.
