|
|
![]() |
||
|
|
|||
Det detta script g�r �r att du f�rst har en sida som vanligt, fast du har �ven ett lager som l�gger sig ovanp� allt annat (position:absolute). Detta lager inneh�ller en gigantisk tabell som �r helt svart, f�rutom p� ett st�lle d�r jag f�r snygghetens skull lagt in en bild som liknar ett h�l (h�let �r transparent). Jag skulle ha kunnat strunta i bilden om jag velat och ha l�tit ena rutan i tabellen vara helt tom, fast f�r effektens skull har jag l�tit en bild finnas d�r. N�r man trycker p� l�nken s� f�rsvinner hela lagret och d� syns det som finns bakom (din vanliga sida). L�gg m�rke till att bilderna antingen har WIDTH="1" eller HEIGHT="1" (f�rutom den runda bilden som har sina riktiga m�tt angivna). Detta f�r att spara p� processorkraft, framf�rallt i Netscape. Det �r dock i scriptet nedan som skillnaden blir m�rkbar. Om man i scriptet nedan ist�llet f�r de sm� bilder jag nu har s�tter in stora v�rden i WIDTH och HEIGHT s� flyttar sig inte bilden i samma takt som musen (mest m�rkbart i Netscape). Jag ska nu g�ra om scriptet s� att lagret f�rflyttar sig efter musens r�relser. P� detta s�tt ser du just det som finns bakom musen, eftersom h�let �r d�r musen finns hela tiden.
F�r dig som inte kan JavaScript blir en beskrivning av scriptet r�tt obegripligt, fast om du kan det s� st�r det i sj�lva scriptet vad som g�r vad. F�r dig som kan JavaScript: L�gg m�rke till att Explorers document.all[lagernamn].style.left/top s�ger lagrets placering i f�rh�llande till den punkt som finns l�ngst upp till v�nster i HTMLsidan. Dvs, om du har ett lager som ska vara p� en best�md position s� kommer denna att flyttas p� bes�karens sk�rm n�r bes�karen scrollar din sida. Netscape � andra sidan anv�nder document.layers[lagernamn].left/top som s�ger lagrets placering i f�rh�llande till den punkt som finns l�ngst upp till v�nster i webbl�sarf�nstret. Ett script som har ett konstant v�rde p� document.layers[lagernamn].left/top (f�r NN) och document.all[lagernamn].style.left/top (f�r IE) kommer allts� INTE flytta lagret p� sk�rmen d� sidan scrollas i Netscape. En Exploreranv�ndare kommer d�remot m�rka att lagret "flyttas upp�t" d� bes�karen scrollar ner�t. (Kan liknas vid en vanlig bild p� en sida. D� du scrollar ner�t �ker bilden "upp�t" p� din sk�rm. Netscape fungerar allts� inte p� detta s�tt med lager). I detta script �tg�rdar vi problemet med att l�gga till document.body.scrollLeft (i X-led) och document.body.scrollTop (i Y-led) till bildens placering i Explorer, eftersom vi vill att bildens position ska vara i f�rh�llande till den punkt som finns l�ngst upp till v�nster i webbl�sarf�nstret. document.body.scrollLeft och document.body.scrollTop ger oss v�rdet av hur l�ngt bes�karen har scrollat sk�rmen i X och Y led. Detta beh�ver vi inte ta h�nsyn till f�r dem med Netscape. Copyright © Omid Rouhani 1997-2022; Alla r�ttigheter reserverade. Guider: [ HTML guide ] - [ JavaScript guide ] - [ DHTML guide ] - [ Perl guide ] - [ Sitemap ] |