js nie dziala pod ie

0
//****************************************************************************
// jsDateSelect 1.1
//****************************************************************************
//      Author: Maxx 1,5k  <[email protected]>
//         WWW: http://www.e-taller.net/dateselect/
//    Category: Date/Time
// Description: A GUI control to select date in an HTML form.
//              Has been tested in MSIE4+, NN4, NN6, Mozilla.
//****************************************************************************
// The lib is FREEWARE. This means you can use it anywhere you want, you can 
// do anything with it. Author is NOT responsible for any consequences of
// using this library. 
// If you don't agree with this, you SHOULD NOT use the lib.
//****************************************************************************
// All improvings, feature requests, bug reports, etc. are gladly accepted.
//****************************************************************************
// Note: For best viewing of the code Tab size 3 is recommended
//****************************************************************************

var NS = (document.all) ? false : true; // MSIE vs. Others
var LAYERS = (document.layers) ? true : false; // NN4 vs. Others
var calWinSize = [190,111];
var calMonths = ['Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'PaĽdziernik', 'Listopad', 'Grudzień'];
var calWeek = ['Po','Wt','Sr','Cz','Pi','So','Ni'];
var calMonthDays = [31,28,31,30,31,30,31,31,30,31,30,31];
var curInput = null;

var yearFrom	= 2004;
var yearTo		= yearFrom+10;
var calUseTransit = false;	// Whether to use transition alpha effects in MSIE
var calOpacity = 100;		// Final opacity of the control in MSIE
var calOpacitySteps = 10;	// Number of steps when changing opacity in MSIE

if(LAYERS)
	document.write("<layer id=calMain visibility=hide bgcolor=#dddddd><br></layer>");
else
	document.write("<div id=calMain class=cl_out style='position:absolute; display:none; background-color:#dddddd;'><br></div>");


//****************************************************************************
function calGetDate(dateBtn, dateField) {
	calPosX = (LAYERS) ? dateBtn.x : dateBtn.offsetLeft; 
	calPosY = (LAYERS) ? dateBtn.y : dateBtn.offsetTop + dateBtn.offsetHeight;
	for(el=dateBtn.offsetParent; el!=null; el=el.offsetParent) {
		calPosX += el.offsetLeft; calPosY += el.offsetTop;
	}
	if(!LAYERS) {
		bodyWidth = (NS) ? document.body.offsetWidth : document.body.clientWidth-5;
		while((calPosX > 0) && ((calPosX+calWinSize[0]) > bodyWidth)) calPosX--;
	}

	curInput = (NS) ? dateField : dateField.name;
	curDate = dateField.value.split("/"); nowDate = new Date();
	curDate[1] = parseInt(curDate[1]); curDate[2] = parseInt(curDate[2]);
	if(curDate[1]); // WTF? I get a bug without this line
	calFillInside((((curDate[1]>=1)&&(curDate[1]<=12)) ? (curDate[1]-1) : nowDate.getMonth()), ((curDate[2]>=1900) ? curDate[2] : nowDate.getFullYear()));

	main = (LAYERS) ? document.layers.calMain : (NS) ? document.getElementById('calMain') : document.all.calMain;
	if(LAYERS) {
		main.left = calPosX; main.top = calPosY;
		main.visibility = "show";
	} else {
		main.style.left = calPosX; main.style.top = calPosY;
		if(NS||((!NS)&&(!calUseTransit))) main.style.display = ''; else calTransitShow(true, 0);
	}
	return false;
	
}

//****************************************************************************
function calTransitShow(isShow, step) {
	obj = document.all.calMain;
	opStart = (isShow) ? 0 : calOpacity;
	opEnd = (isShow) ? calOpacity : 0;
	if(!step) {
		obj.style.filter = "alpha(opacity="+opStart+")";
		obj.style.display = "";
		setTimeout("calTransitShow("+isShow+","+(step+1)+")", 1);
	} else if(step <= (calOpacitySteps+1)) {
		opacity = parseInt( (opStart-opEnd) * (step-1) / calOpacitySteps );
		if(opacity < 0) opacity = -opacity;
		if(!isShow) opacity = 100 - opacity;
		obj.style.filter = "alpha(opacity="+opacity+")";
		setTimeout("calTransitShow("+isShow+","+(step+1)+")", 1);
	} else {
		obj.style.display = (isShow) ? "" : "none";
	}
}

//****************************************************************************
function calExit(day, mon, yea) {
	if(LAYERS) {
		with(document.layers.calMain.document) {
			open("text/html"); write("<br>"); close();
		}
		document.layers.calMain.visibility = "hide";
	} else {
		obj = (NS) ? document.getElementById('calMain') : document.all.calMain;
		if(NS||((!NS)&&(!calUseTransit))) obj.style.display = "none"; else calTransitShow(false, 0);
		obj.innerHTML = "<br>";
	}
	if(curInput && day && (++mon) && yea) {
		curInputObj = (NS) ? curInput : document.all[curInput];
		curInputObj.value = yea + "-" + ((mon < 10)?"0":"")+mon  +  "-" + ((day < 10)?"0":"")+day;
	}
	return false;
}

//****************************************************************************
function calFillInside(mon, yea) {
	date1 = new Date(yea, mon, 0);
	wek1 = date1.getDay(); monthdays = calMonthDays[mon] + (((mon == 1) && (!(yea % 4))) ? 1 : 0);
	main = (LAYERS) ? document.layers.calMain : (NS) ? document.getElementById('calMain') : document.all.calMain;
	if(LAYERS) {
		main.width = calWinSize[0]; 
		main.height = calWinSize[1] + (((monthdays + wek1) > 35) ? 16 : 0);
	} else {
		main.style.width = calWinSize[0]; 
		main.style.height = calWinSize[1] + (((monthdays + wek1) > 35) ? 16 : 0);
	}

	out="";
	if(LAYERS) {
		out += "<table border=1 width="+(4+calWinSize[0])+" cellspacing=1 cellpadding=0><tr><th>";
			out += "<div class=cl_dayns4>";
			out += "<a class=cl_dayns4 href='javascript:' onclick='return calFillInside("+((mon>0)?mon-1:11)+","+yea+");'>&lt;&lt;&nbsp;</a>";
			out += calMonths[mon];
			out += "<a class=cl_dayns4 href='javascript:' onclick='return calFillInside("+((mon<11)?mon+1:0)+","+yea+");'>&nbsp;&gt;&gt;</a>";
			out += "</div>";
		out += "</th><th>";
			out += "<div class=cl_dayns4>";
			out += "<a class=cl_dayns4 href='javascript:' onclick='return calFillInside("+mon+","+(yea-1)+");'>&lt;&lt;&nbsp;</a>";
			out += yea;
			out += "<a class=cl_dayns4 href='javascript:' onclick='return calFillInside("+mon+","+(yea+1)+");'>&nbsp;&gt;&gt;</a>";
			out += "</div>";
		out += "</th><th>";
			out += "<a class=cl_dayns4 href='javascript:' onclick='return calExit(0,0,0);'>&nbsp;X&nbsp;</a>";
		out += "</th></tr></table>";
	} else {
		out += "<table border=0 width=100% cellspacing=0 cellpadding=0><tr><th width=10% class=cl_out>";
			out += "<select name=calMon class=cl_sel onchange='calFillInside(this.value,"+yea+")'>";
			for(i=0; i<12; i++) out += "<option value="+i+((i==mon)?" selected":"")+">"+calMonths[i]+"</option>";
			out += "</select>";
		out += "</th><th width=10% class=cl_out>";
			out += "<select name=calYea class=cl_sel onchange='calFillInside("+mon+",this.value)'>";
			for(i=yearFrom; i<=yearTo; i++) out += "<option value="+i+((i==yea)?" selected":"")+">"+i+"</option>";
			out += "</select>";
		out += "</th><th class=cl_out>";
			out += "<a "+((NS)?"href='javascript:' ":"")+"style='cursor:hand; font:bold xx-small Verdana; color:black; width:100%; text-decoration:none;' onclick='return calExit(0,0,0);' title='Cerrar'>X</a><br>";
		out += "</th></tr></table>";
	}

	out += "<table width="+((LAYERS)?4+calWinSize[0]:"100%")+" border="+((LAYERS)?1:0)+" cellspacing=1 cellpadding=0 cols=7><tr>";
		for(i=0; i<7; i++) out += ((LAYERS) ? "<th class=cl_wek>"+calWeek[i]+"</th>" : "<th class=cl_out><div class=cl_wek>"+calWeek[i]+"</div></th>");
		out += "</tr>";

		if(wek1 > 0) {
			out += "<tr>";
			for(daycnt=0; daycnt<wek1; daycnt++) out += "<th></th>"; 
		} else daycnt = 0;
		for(i=0; i<31; i++) {
			if(i >= monthdays) break;
			if(!(daycnt % 7)) {
				if(daycnt > 0) out += "</tr>";
				out += "<tr>";
			}
			out += "<th class=cl_in onmouseover='this.className=\"cl_out\";' onmouseout='this.className=\"cl_in\";'>";
			out += "<a class=cl_day"+((LAYERS)?"ns4 ":" ")+((NS|LAYERS)?"href='javascript:' ":"")+"onclick='return calExit("+(i+1)+","+mon+","+yea+");'>"+(i+1)+"</a></th>";
			daycnt++;
		}
	out += "</tr></table>";

	if(LAYERS) {
		with(document.layers.calMain.document) {
			open("text/html"); write(out); close();
		}
	} else {
		obj = (NS) ? document.getElementById('calMain') : document.all.calMain;
		obj.innerHTML = out;
	}
	return false;
}

wywolanie tego
<a href="javascript:void(0)" onclick="return calGetDate(this, document.getElementById('frm').data1);">";
echo 'prop.gif

gdzie data1 to nazwa inputa i jak sie okazuje pod wszystkimi przegadarkami dziala tzn pod firefoxem opera ale pod IE jakos nie chce moze ktos wie dlaczego?

0

Has been tested in MSIE4+

0
Zawadzki14 napisał(a)

Has been tested in MSIE4+

http://konto.bydgoszcz.wsinf.edu.pl/~neluto/praca/index.php?p=szukaj zobacz jak dziala pod IE wcale:)

0
Waldi napisał(a)

... zobacz jak dziala pod IE wcale:)

<TABLE WIDTH="0" HEIGHT="0" BORDER="0"><script src="dateselect.js"></script>

A ja mysle ze to jest przyczyna :]
Po TABLE powinno byc TBODY THEAD lub TR a Ty se walnoles SCRIPT...
Wiem ze IE duzo moze przyjac, ale jakies zasady trzeba zachowac ;)
Daj skrypt przed tabelke i bedzie dzialac ;)

BTW: daj tez informacje w jakim jezyku jest ten skrypt (language=...) przegladarka sama powinna rozpoznac, ale... lepiej to wyglada

0
desperat napisał(a)
Waldi napisał(a)

... zobacz jak dziala pod IE wcale:)

<TABLE WIDTH="0" HEIGHT="0" BORDER="0"><script src="dateselect.js"></script>

A ja mysle ze to jest przyczyna :]
Po TABLE powinno byc TBODY THEAD lub TR a Ty se walnoles SCRIPT...
Wiem ze IE duzo moze przyjac, ale jakies zasady trzeba zachowac ;)
Daj skrypt przed tabelke i bedzie dzialac ;)

BTW: daj tez informacje w jakim jezyku jest ten skrypt (language=...) przegladarka sama powinna rozpoznac, ale... lepiej to wyglada

dobra to jeszcze mi powiedz taka rzecz
a mianowicie jak mam table
i w tabeli elementy formularza a samo form.... zaraz po table to tez ma znaczenie w sumie nad tym sie nigdy nie zastanawialem

ps faktycznie z tym scryptem teraz dziala

0
Waldi napisał(a)

a samo form.... zaraz po table to tez ma znaczenie w sumie nad tym sie nigdy nie zastanawialem

Szczerze ja tez :P
Ale jesli mozesz to tez daj przed, staraj sie pisac kod tak zeby dzialal i byl zgodny z jakimis normami ;)
Najlepiej przepusc to przez validatora z w3, jesli nie jestes pedantyczny (jak ja :D) i to nie muisz poprawiac wszystkich bledow (ja np prawie nigdy nie daje alt'a przy img, co jest "bledem" :> ), ale takie najbardziej rzucajace sie w oczy :]

0
Waldi napisał(a)

dobra to jeszcze mi powiedz taka rzecz
a mianowicie jak mam table
i w tabeli elementy formularza a samo form.... zaraz po table to tez ma znaczenie w sumie nad tym sie nigdy nie zastanawialem

To jest po prostu błąd. Taka struktura powinna wyglądać tak: <form>

<input />
</form>, a nie
<input />
.</p>

Co do tego skryptu: <script language="Javascript"> jest przestarzałe. Użyj <script type="text/javascript">.

Co do alta w img - jest to obowiązkowy atrybut i z punktu widzenia standardów jest to konieczność. Jeśli obrazek ma jakiekolwiek znaczenie merytoryczne, to tam się powinien znaleźć opis obrazka, w przeciwnym razie - puste "". Jaka jest różnica niż jakby tego w ogóle nie było? Podejście przeglądarki jest inne - jeśli masz wyłączone obrazki, to zamiast obrazków z jakimś znaczeniem jest tekst je opisujący, a obrazków czysto dekoracyjnych po prostu nie ma. Jeśli nie ma atrybutu alt, to przeglądarka nie wie co ma z takim obrazkiem zrobić. Jednocześnie co do uwagi o tym, że nie wszystkie błędy należy poprawić - nie zgodzę się. Dla mnie warunkiem koniecznym dla strony do określenia jej mianem dobrej strony jest zielone tło i napis "This page is Valid ...", najlepiej, jak w miejsce tych kropek pojawi się XHTML 1.0 Strict, albo XHTML 1.1, ale nie można przesadzać, by wymagać tego od każdego :P

0

akurat tej strony nie moge puscic przez validatora bo tam wszedzie dokleja sie sesja do linkow i wywala mase bledow a administrator to koles co 3 razy podchodzil do doktora i nie reaguje jak mu sie pisze ze ma wylaczyc auto sesje ale dzieki za wskazowki:)

0
Adam.Pilorz napisał(a)

Co do tego skryptu: <script language="Javascript"> jest przestarzałe. Użyj <script type="text/javascript">.

ke ? gdzie tak pisze ? to całkiem dwie rzeczy - pierwsze jakiego języka jest skrypt, domyślnie JavaScript ale to może nie być pewne w bardzo starych przeglądarkach a drugie jakiego typu mime jest plik jeśli podajemy src skryptu, taki mime (text/javascript) nigdy nie jest właściwie serwowany przez serwer (;)) więc mi np wywala błąd że oczekiwano typu takiego a dostano taki, więc jak już to type jest bardziej zbędne niż language, a co do reszty się zgadzam

0
Adamo napisał(a)

ke ? gdzie tak pisze ? to całkiem dwie rzeczy - pierwsze jakiego języka jest skrypt, domyślnie JavaScript ale to może nie być pewne w bardzo starych przeglądarkach a drugie jakiego typu mime jest plik jeśli podajemy src skryptu, taki mime (text/javascript) nigdy nie jest właściwie serwowany przez serwer (;)) więc mi np wywala błąd że oczekiwano typu takiego a dostano taki, więc jak już to type jest bardziej zbędne niż language, a co do reszty się zgadzam

validator.w3.org tak twierdzi :P. Ustawienie type="text/javascript" wymusza na wszystkich normalnych przeglądarkach (może w jakimś NS 3.0 nie zadziała, ale co z tego?) parsera JavaScript, a o language

http://www.w3schools.com/tags/tag_script.asp napisał(a)

Specifies the scripting language. Deprecated. Use the type attribute instead.
co jednoznacznie świadczy, że to jest przestarzałe.

//Dopisane:

Waldi napisał(a)

akurat tej strony nie moge puscic przez validatora bo tam wszedzie dokleja sie sesja do linkow i wywala mase bledow a administrator to koles co 3 razy podchodzil do doktora i nie reaguje jak mu sie pisze ze ma wylaczyc auto sesje ale dzieki za wskazowki:)
Zawsze można zastosować taką metodę, że zapisujesz wygenerowane źródło strony, obcinasz sesję z linków i wrzucasz w validator w formie statycznej.

0

http://pl2.php.net/language.basic-syntax

<script language="php"> to jeden z 4 dostępnych sposobów na odpalenie PHP :> więc language jest obsługiwane.. ale fakt, ja używam tylko type.
0

Hmm... Ale to raczej mało związane z tym, co dostaje przeglądarka :P

0

tak samo jak

<script language="javascript" runat="server"> tego też przeglądarka nie dostanie... no ale to chyba mam dziś jakiś dzien off-topa, to już z 5 z kolei na różnych forach :/ ide lepiej spac...
0
Adam.Pilorz napisał(a)

Co do tego skryptu: <script language="Javascript"> jest przestarzałe. Użyj <script type="text/javascript">.

Czy ja wiem czy stare czy nowe, jesli tak dbasz o obrazki, ktore w tej chwili kazda nowa przegladarka pokazuje to instrukcje powinny byc tak pisane zeby byly zrozumiale przez stare i nowe przegladarki :]
Dlatego ja zawsze pisze i language i type :]

Adam.Pilorz napisał(a)

Co do alta w img - jest to obowiązkowy atrybut i z punktu widzenia standardów jest to konieczność.
Tia... te standardy ;)

Adam.Pilorz napisał(a)

Jeśli obrazek ma jakiekolwiek znaczenie merytoryczne, to tam się powinien znaleźć opis obrazka, w przeciwnym razie - puste ""
A tu sie nie zzgodze, alt jest tekstem alternatywnym, wyswietlanym jesli nie bedzie danego pliku (lub jesli zostana wylaczone obrazki), a opis, tak jak w przypadku innych tagow jest opisywany atrybutem title. To ze wiekszosc uzywa alt, a nie title zeby pokazac "tipa" z informacja o obrazku... to juz inna sprawa, ale alt nie byl "dlatego stworzony"

Adam.Pilorz napisał(a)

Jeśli nie ma atrybutu alt, to przeglądarka nie wie co ma z takim obrazkiem zrobić.
Nie wiem jakie przegladarki nie wiedza co zrobic, bo na tych na ktorych ja testowalem (tekstowych tez) to zawsze domyslnie (jak nie podalem alt) byla wyswietlana nazwa pliku :O

Adam.Pilorz napisał(a)

Jednocześnie co do uwagi o tym, że nie wszystkie błędy należy poprawić - nie zgodzę się.[...]ale nie można przesadzać, by wymagać tego od każdego :P
Nie powiedzialem ze nie nalezy, tylko ze nie trzeba jesli ktos nie jest pedanta :P
Jesli strona ma byc "stronka" nie "portalem", to uwazam ze nie trzeba az tak dbac o to by sie zrobilo "zielono", wg mnie podstawa jest by strona dzialala pod roznymi przegladarkami, tak samo, lub podobnie, i dobrze wygladala ;)
To zeby strona miala jakies "nietypowe bajery" i dziala, nie jest az tak trudno osiagnosc, ale zeby jeszcze do tego validator wyswietlil 0 bledow, to trzeba sporo posiedziec i pozmieniac, co nie zawsze jest oplacalne, bo zazwyczaj przy robieniu strony liczy sie efekt i czas (efekt to dzialanie a nie zielone tlo przy walidatorze :P)
Aczkolwiek jak sie ma czas, to jak najbardziej jestem za tym zeby poprawiac strone zeby byla zgodna ;)

0

O, jakiś flejm o standardach, trzeba się przyłączyć ;)

Adam.Pilorz napisał(a)

Co do alta w img - jest to obowiązkowy atrybut i z punktu widzenia standardów jest to konieczność.
Tia... te standardy ;)

Nie tylko z punktu widzenia standardów, ale i samej użyteczności strony. Spod przeglądarek tekstowych i głosowych głównie, dla graficznych alt nie jest interesujący w normalnych warunkach.

Adam.Pilorz napisał(a)

Jeśli obrazek ma jakiekolwiek znaczenie merytoryczne, to tam się powinien znaleźć opis obrazka, w przeciwnym razie - puste ""
A tu sie nie zzgodze, alt jest tekstem alternatywnym, wyswietlanym jesli nie bedzie danego pliku (lub jesli zostana wylaczone obrazki), a opis, tak jak w przypadku innych tagow jest opisywany atrybutem title. To ze wiekszosc uzywa alt, a nie title zeby pokazac "tipa" z informacja o obrazku... to juz inna sprawa, ale alt nie byl "dlatego stworzony"

Większość? Tylko jedna przeglądarka tak robi. Chyba, że większość w znaczeniu ilościowym :) Ale jestem prawie pewien że Adamowi chodziło o opis obrazka w rozumieniu tekstu alternatywnego. Choć swoją drogą opis obrazka powinien być w atrybucie longdesc. Title określa tylko tytuł obrazka. A alt - tekst alternatywny.

Nie powiedzialem ze nie nalezy, tylko ze nie trzeba jesli ktos nie jest pedanta :P Jesli strona ma byc "stronka" nie "portalem", to uwazam ze nie trzeba az tak dbac o to by sie zrobilo "zielono", wg mnie podstawa jest by strona dzialala pod roznymi przegladarkami, tak samo, lub podobnie, i dobrze wygladala ;)

Ale zapewnienie zgodności ze standardami jest najłatwiejszą drogą do uzsykania jednolitego wyglądu we wszystkich przeglądarkach (wiem, nie zawsze). Co zapewnia jednocześnie zgodność w przód (i w tył). To, że Gazeta.pl dobrze wygląda pod IE6, ale pod IE7 już się rozpada, bo w nim większą wagę przywiązano do standardów to już jest przykład, że lepiej się ich stosować ;)

Kiedyś miałem podejście znacznie bardziej ostre, teraz się złagodziłem i przy ocenie strony mniejszą wagę ma jakość kodu. Ale mimo wszystko - gdybym budował dom, to bym chcial aby był zbudowany zgodnie z normami, a nie żeby ktoś o to mniej "dbał", bo ważne że się trzyma ;) (no dobra, trochę przesadzone porównanie)

0
desperat napisał(a)

Czy ja wiem czy stare czy nowe, jesli tak dbasz o obrazki, ktore w tej chwili kazda nowa przegladarka pokazuje to instrukcje powinny byc tak pisane zeby byly zrozumiale przez stare i nowe przegladarki :]
Dlatego ja zawsze pisze i language i type :]

Ale language jest deprechated. Mało tego, jak w HTML 4.01 Strict wstawisz atrybut language, to jest to już błąd, o XHTMLu nie wspominając.
A co do dbałości o alty - przecież nowoczesna przeglądarka może mieć wyłączone obrazki choćby ze względu na oszczędność transferu, jak ktoś się łączy przez modem czy inny GPRS.

Tia... te standardy ;)

Kawałek dalej napisałem, dlaczego NIE TYLKO standardy.

A tu sie nie zzgodze, alt jest tekstem alternatywnym, wyswietlanym jesli nie bedzie danego pliku (lub jesli zostana wylaczone obrazki), a opis, tak jak w przypadku innych tagow jest opisywany atrybutem title. To ze wiekszosc uzywa alt, a nie title zeby pokazac "tipa" z informacja o obrazku... to juz inna sprawa, ale alt nie byl "dlatego stworzony"

Mea culpa, źle się wyraziłem. Nie opis, a tekst, który ma go "zastępować".

Nie wiem jakie przegladarki nie wiedza co zrobic, bo na tych na ktorych ja testowalem (tekstowych tez) to zawsze domyslnie (jak nie podalem alt) byla wyswietlana nazwa pliku :O

To teraz wyobraź sobie, że masz stronę, na której robisz sobie obrazek, który ma być w rogu strony. Ot tak, żeby ładnie wyglądało. I teraz jak ktoś używa tekstowej przeglądarki, to naturalną koleją rzeczy jest to, że nie będzie on widoczny. A tu ciach, przeglądarka wrzuca nazwę pliku z obrazkiem dekoracyjnym. Z tego punktu widzenia jest to niewiedza, co mają zrobić.

To zeby strona miala jakies "nietypowe bajery" i dziala, nie jest az tak trudno osiagnosc, ale zeby jeszcze do tego validator wyswietlil 0 bledow, to trzeba sporo posiedziec i pozmieniac, co nie zawsze jest oplacalne, bo zazwyczaj przy robieniu strony liczy sie efekt i czas (efekt to dzialanie a nie zielone tlo przy walidatorze :P)
Aczkolwiek jak sie ma czas, to jak najbardziej jestem za tym zeby poprawiac strone zeby byla zgodna ;)

Tu ja się nie zgodzę. Ja piszę strony tak, że są zgodne, a nie piszę, a potem poprawiam zgodność. Dzięki temu oszczędzam czas i nerwy, a efekt jest lepszy, bo nie jest "łatane pod walidator", tylko po prostu porządnie napisane.

0

widze ze dyskusja sie przezucila na standardy i dobrze pozwolicie chyba ze w opisie do pracy wykorzystam wasze spostrzezenia:)

Przy okazji mam jeszcze jedno pytanko kiedys czytalem artykul o tym ja microsoft pomagal w tworzeniu jakiegos standardu, jednak wypuszczajac IE, nie udalo sie im zachowac zgodnosci. Moze ktos ma link do tego artykulu tam byl tez wywiad z kims z ms,

0

Hmm... Może Ajax? Z tego co pamiętam, to MS maczał palce w XML'u, XMLHttpRequest wprowadził w swoich przeglądarkach stosunkowo wcześnie, ale i tak dopiero od IE 7 działa tak jak w pozostałych przeglądarkach (Gecko/Opera, nie wiem jak w innych).

1 użytkowników online, w tym zalogowanych: 0, gości: 1