logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[HTML] Kliknięcie w określony obszar na stronie -współrządne

MES Mariusz 19 Lip 2007 11:14 2067 4
REKLAMA
  • #1 4094705
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Witam.

    Potrzebowałbym zrobić coś takiego, aby po najechaniu wskaźnikiem myszy w dololnie zaseklarowany (współrzędnymi?) obszar ekranu, wyświetlił się tam obrazek zakrywający dotychczasowe tło i zadziałał jak link otwierający następną stronę.

    Ktoś ma pomysł jak to zrobić?
  • REKLAMA
  • Pomocny post
    #2 4108360
    paczek86
    Poziom 14  
    Posty: 44
    Pomógł: 11
    Ocena: 2
    Witam.
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html>
    <head>
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />
      <script type="text/javascript">
      document.onclick=getMouseCoords;
      function getMouseCoords(e) {
    	var posx = 0;
    	var posy = 0;
    	if (!e) var e = window.event;
    	if (e.pageX || e.pageY) 	{
    		posx = e.pageX;
    		posy = e.pageY;
    	}
    	else if (e.clientX || e.clientY) 	{
    		posx = e.clientX + document.body.scrollLeft
    			+ document.documentElement.scrollLeft;
    		posy = e.clientY + document.body.scrollTop
    			+ document.documentElement.scrollTop;
    	}
                //ten warunek dostosuj do wlasnych potrzeb
    	if (posy<=100) { //warunek na wspolrzedne okreslajacy obszar, w ktorym klikniecie ma spowodowac wyswietlenie sie obrazka
    	   var o = document.getElementById("odn");
    	   o.style.left=posx + "px";
    	   o.style.top=posy + "px";
    	   o.style.visibility="visible";
    	}
    }
      </script>
    </head>
    <body>
    <div style="visibility: hidden; z-index: 10; position: absolute;" id="odn"><a href="nextpage"><img src="obrazek.jpg"></a></div>
    
    
    
    
    
    </body>
    </html>

    Tak jak napisałem w komentarzu, wystarczy że dostosujesz warunek
    if (posy<=100) 
    do swoich potrzeb (czyli zadeklarujesz obszar strony, w którym kliknięcie spowoduje ukazanie się obrazka - linku).
  • REKLAMA
  • #3 4161636
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Fajne, i działa, tylko ja bym chciał, aby obrazek wyświetlił się po najechaniu myszą w wybrany obszar strony od razu a nie dopiero po kliknięciu :-)

    Pozdrawiam
    Mariusz
  • REKLAMA
  • #4 4231336
    paczek86
    Poziom 14  
    Posty: 44
    Pomógł: 11
    Ocena: 2
    MES Mariusz napisał:
    Fajne, i działa, tylko ja bym chciał, aby obrazek wyświetlił się po najechaniu myszą w wybrany obszar strony od razu a nie dopiero po kliknięciu :-)

    Czy po najechaniu na ten wybrany obszar obrazek ma podążać za kursorem, czy też pozostawać w jednym, wybranym miejscu? Powyżej zmodyfikowany skrypt działający według Twoich założeń, aby wybrać pozycję obrazka zmodyfikuj komentarze tak, jak napisałem w kodzie źródłowym.
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
    <html> 
    <head> 
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" /> 
      <script type="text/javascript"> 
      document.onmousemove=getMouseCoords; //tutaj modyfikacja-obrazek wyswietla sie po najechaniu kursorem na wybrany obszar
      function getMouseCoords(e) { 
       var posx = 0; 
       var posy = 0; 
       if (!e) var e = window.event; 
       if (e.pageX || e.pageY)    { 
          posx = e.pageX; 
          posy = e.pageY; 
       } 
       else if (e.clientX || e.clientY)    { 
          posx = e.clientX + document.body.scrollLeft 
             + document.documentElement.scrollLeft; 
          posy = e.clientY + document.body.scrollTop 
             + document.documentElement.scrollTop; 
       } 
                //ten warunek dostosuj do wlasnych potrzeb 
       if (posy<=100) { //warunek na wspolrzedne okreslajacy obszar, w ktorym klikniecie ma spowodowac wyswietlenie sie obrazka 
          var o = document.getElementById("odn"); 
          //te 2 linijki odpowiadaja za podazanie obrazka za kursorem myszy
          o.style.left=posx + "px"; 
          o.style.top=posy + "px"; 
          //obrazek w stalym miejscu-zakomentuj 2 powyzsze linie, a odkomentuj 2 ponizsze
          //o.style.left="200px"; 
          //o.style.top="200px"; 
          o.style.visibility="visible"; 
       } 
    } 
      </script> 
    </head> 
    <body> 
    <div style="visibility: hidden; z-index: 10; position: absolute;" id="odn"><a href="nextpage"><img src="obrazek.jpg"></a></div> 
    </body> 
    </html>
  • #5 4231359
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    paczek86 napisał:
    MES Mariusz napisał:
    Fajne, i działa, tylko ja bym chciał, aby obrazek wyświetlił się po najechaniu myszą w wybrany obszar strony od razu a nie dopiero po kliknięciu :-)

    Czy po najechaniu na ten wybrany obszar obrazek ma podążać za kursorem, czy też pozostawać w jednym, wybranym miejscu?

    Ma pozostać w jednym zdefiniowanym współrzędnymi miejscu (to ma być rodzaj specyficznego buttona). Kod sprawdzę najszybciej jak tylko będę mógł :-)
REKLAMA