Cytat(fifi209 @ 27.11.2010, 08:51:55 )

Nie każdy musi mieć włączonego javascript lub nawet adblock może Ci czasem zablokować.
i dla przykladu jeśli kotś wchodzi na stronę przez telefon to i też nie każdy musi mieć włączone obrazki - pozatym, jak ktoś wiedział gdzie to wyłączyć to i wie gdzie włączyć jeśli coś na danej stronie chce zobaczyć ^^ - poza tym jeśli ktoś ma wyłączony js to tym bardziej ma np. wyłączony flash ^^ - a jeśli ktoś wyłącza js to i tak na pewnych stronach go włącza - prawie nikt nie wyłącza js ^^
Cytat(fifi209 @ 27.11.2010, 08:51:55 )

Tak się teraz robi.

nie udaj, że nie wiesz o co mi chodziło
bądźmy świadomi jednego - uzyszkodnika nie obchodzi jak co się robi czy robiło - uzyszkodnik przykłada uwagę głównie do treści i wyglądu strony ;p
Cytat(Mephistofeles @ 27.11.2010, 09:59:04 )

...nikt normalny nie używa do tego JS...
więc najlepiej nie używaj do niczego js'a ;] - i zapomnij o bibliotekach typu jquery - to też js ^^
niżej wszystkie wspomniane przykłady kodu html'a z pełnymi adresami do obrazków - więc wystarczy skopiować by zobaczyć jak działają
sprites:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> a.obrazek {
display: block;
width: 100px;
height: 100px;
background-image: url("http://www.google.pl/images/srpr/nav_logo27.png");
background-position: 0px 0px;
}
a.obrazek:hover {
background-position: 0px -100px;
}
sprites - hover lepiej działa w tagach "a" - aczkolwiek można go stosować do dowolnego tagu nie znajdującego się w linkach - dla starszych ie jest plugin w JS
css i preload:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> a.obrazek {
display: block;
width: 75px;
height: 75px;
background-image: url("http://forum.php.pl/uploads/av-40696.jpg");
background-position: 0px 0px;
}
a.obrazek:hover {
background-image: url("http://forum.php.pl/uploads/av-40400.png");
}
.preloader {
display: block;
width: 0px;
height: 0px;
position:absolute;
left:-500px;
top:-500px;
}
podmiana obrazka - tła w css - i niżej preload coby nie było skoku ;p
preload dla hovera na końcu strony by jako ostatnie te obrazki się doczytywały - oczywiście blok trzeba ukryć ;) - A JEDNOCZEŚNIE MUSI BYĆ WIDOCZNY GDYŻ INACZEJ SIĘ NIE DOŁADUJĄ OBRAZKI NIE WIDOCZNE
<img src="http://forum.php.pl/uploads/av-40400.png" />
"staromodny" hover w js bez preloada obrazka:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> javascript stare i podobno nie eleganckie - bez preloada obrazka...
<img width="75px" height="75px" src="http://forum.php.pl/uploads/av-40696.jpg" onmouseover="this.src='http://forum.php.pl/uploads/av-40400.png'" onmouseout="this.src='http://forum.php.pl/uploads/av-40696.jpg'" />
hover w js:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript"> (function(){var sOut = '',
sOver = 'http://forum.php.pl/uploads/av-40400.png';
// preload i podpiecie zdarzeń - prowizorycznie pod window.onload
window.onload = function(){
var eImg = document.getElementById('obrazek'),
oImg = new Image;
sOut = eImg.src;
// preload i po załadowaniu podpięcie zdarzenia
oImg.onload = function(){
eImg.onmouseout = function(){
this.src = sOut;
};
eImg.onmouseover = function(){
this.src = sOver;
};
oImg = null;
}
oImg.src = sOver;
}
})()
javascript stare i podobno nie eleganckie - bez preloada obrazka... - żadna ze zmiennych nie ląduje do globalnego window - oprócz jednej funkcji podpiętej pod window.onload - window.onload nie polecam ale tutaj lepiej obrazuje o co chodzi
<img id="obrazek" width="75px" height="75px" src="http://forum.php.pl/uploads/av-40696.jpg" />