1. Event, azaz, események és tesztelésük.
2. Esemény meghatározások.
3. JavaScipt témakörök
4. JavaScipt eseménykezelők.
Meghatározás. | Leírás | Teszt területek. |
---|---|---|
click() |
Kattintási esemény. Bekövetkezik, ha a kiválasztott elem területén, egérbillentyűt lenyomjuk és azonnal felengedjük. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt leszármazottja, gyermeke, azaz, kijelölt területen belül van. |
Kattints
ide. |
dblclick() |
Dupla kattintási esemény. Bekövetkezik, ha a kiválasztott elem területén, egérbillentyűvel egymásután kétszer kattintottak. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt leszármazottja, gyermeke, azaz, kijelölt területen belül van. |
Duplán kattints
ide. |
| ||
mousedown() |
Egérbillentyű lenyomása. Bekövetkezik, ha a kiválasztott elem területén, egérbillentyűt lenyomjuk. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt gyermeke, leszármazottja, azaz, kijelölt területen belül van. |
Nyomjuk le itt, az
egérbillentyűt. |
| ||
mousedown() felhasználható annak meghatározására is, hogy melyik egérbillentyűt nyomtuk le. Egérbillentyű lenyomása. Bekövetkezik, ha a kiválasztott elem területén, valamelyik egérbillentyűt lenyomjuk. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt gyermeke, leszármazottja, azaz, kijelölt területen belül van. |
Nyomjuk le, valamelyik
egérbillentyűt. |
|
| ||
mouseup() |
Egérbillentyű felengedése. Bekövetkezik, ha a kiválasztott elem területén, egérbillentyűt felengedtük. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt leszármazottja, gyermeke, azaz, kijelölt területen belül van. |
Nyomjuk le egérbillentyűt
majd engedjük fel. |
| ||
mouseenter() |
Területre érkezés. Bekövetkezik, ha a kiválasztott elem területére mozgatjuk az egérkurzort. Érvényes, csak a kijelölt területre, melyet nem befolyásol kijelölt leszármazottjainak, gyermekeinek, azaz, kijelölt területen belüli elemek, területére érkezés vagy elhagyás. |
Mozgassuk ide,
egérkurzort. |
mouseover() |
Területre érkezés, külső vagy belső területről. Bekövetkezik, ha a kiválasztott elem területére mozgatjuk az egérkurzort. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt leszármazottja, gyermeke, azaz, kijelölt területen belül van. |
Mozgassuk ide,
egérkurzort. |
mousemove() |
Területen történő mozgás. Bekövetkezik, ha a kiválasztott elem területére mozgatjuk az egérkurzort. Addig aktív, még területen mozog az egérkurzor. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt leszármazottja, gyermeke, azaz, kijelölt területen belül van. |
Mozgassuk egérkurzort.
ezen területen. |
| ||
mouseleave() |
Terület elhagyása. Bekövetkezik, ha a kiválasztott elem területét elhagyja az egérkurzor. Érvényes, csak a kijelölt területre, melyet nem befolyásol kijelölt leszármazottjainak, gyermekeinek, azaz, kijelölt területen belüli elemek területének elhagyása. Aktív, az "egér" görgetőjének használatakor is. |
Mozgassuk ide kurzort,
és hagyjuk el területeket. |
mouseout() |
Terület elhagyása. Bekövetkezik, ha a kiválasztott elem területét elhagyja az egérkurzor. Érvényes kijelölt területre, és minden olyan területre, mely kijelölt leszármazottja, gyermeke, azaz, kijelölt területen belül van. Aktív, az "egér" görgetőjének használatakor is. |
Mozgassuk ide kurzort,
és hagyjuk el területeket. |
wheel |
Egér görgőjének alkalmazása. Akkor következik be, amikor az egér görgőjét felfelé / lefelé görgetik, egy elem területe felett. Érintőpadnál akkor is előfordul, amikor a felhasználó görgeti vagy nagyít / kicsinyít egy elemet. (például egy laptop "egere") segítségével. Letiltása: document.getElementById("gorget").onwheel = function(){return false;}; Firefox, Chrome, Microsoft Edge,ismeri. <script> document.getElementById("gorget").onwheel = function(){WheelGorget()}; function WheelGorget() { document.getElementById("gorget").style.fontSize = "35px"; } </script> IE-ben a kerékeseményt csak az addEventListener() metódus támogatja, de ezt, Firefox, Chrome, Microsoft Edge is, ismeri.
<script>
idwh=document.getElementById("gorget");
idwh.addEventListener("wheel",WheelGorget);
function WheelGorget() {
document.getElementById("gorget").style.fontSize = "35px";
}
</script>
|
ABCDEFGH
|
scroll() |
Görgetősávos esemény. Esemény akkor következik be, amikor görgetősávot görgetik. Használhatjuk görgetéshez, az egér görgetőjét is. Ekkor előfordulhat némelyik böngészőnél, hogy egérgörgetés előtt, kattintani kell a kijelölt területen. Érvényes a dokumentumra, vagy kijelölt területre. Aktív, az "egér" görgetőjének használatakor is. <p>Scroll, azaz, görgetések száma: <span id="scrollkiiras">0</span></p> <p>Görgetés:<br> Top pozíciója = <span id="topscrolpozicio">0</span><br> Left pozíciója = <span id="leftscrolpozicio">0</span> </p> <script> let x = 0; function scrollEsemeny() { document.getElementById("scrollkiiras").innerHTML = x += 1; var TopScroll=document.getElementById("srollteszt").scrollTop; document.getElementById("topscrolpozicio").innerHTML =TopScroll; var LeftScroll=document.getElementById("srollteszt").scrollLeft; document.getElementById("leftscrolpozicio").innerHTML =LeftScroll; } </script> |
Scroll, azaz, görgetések,
Teszt minta. Ez egy pre elem területén elhelyezett szövegsor, mely tartalmának végig olvasásához, az alsó görgetősávval mozgatni kell, balra és jobbra a tartalmat. Használjuk a CSS túlcsordulási stílus tulajdonságot overflow: scroll; egy kiválasztott elemnél, görgetősáv létrehozásához. <head> <style> #srollteszt { border: 1px solid black; width: 600px; height: 300px; padding-left: 10px; margin-right: auto; margin-left: auto; overflow: scroll; } </style></head> <body> <div id="srollteszt" onscroll="scrollEsemeny()"> <p> Használhatjuk görgetéshez, az egér görgetőjét is. Ekkor előfordulhat némelyik böngészőnél, hogy egérgörgetés előtt, kattintani kell a kijelölt területen. <pre> Ez egy pre elem területén elhelyezett szövegsor, mely tartalmának végig olvasásához, az alsó görgetősávval mozgatni kell, balra és jobbra a tartalmat. </pre> </div> <p>Scroll, azaz, görgetések száma: <span id="kiiras">0</span></p> <script> let x = 0; function scrollEsemeny() { document.getElementById("kiiras").innerHTML = x += 1; } </script> Görgetés: |
| ||
hover |
Alkalmazása, hivatkozási link területre érkezés/elhagyás. Bekövetkezik, ha egérkurzor belép, vagy elhagyja az elem területét. Hover helyett alkalmazhatók a következő meghatározások: mouseenter = Érkezés és mouseleave = Elhagyás. Érvényes, csak a kijelölt területre, melyet nem befolyásol kijelölt leszármazottjainak, azaz, kijelölt területen belüli elemek területére érkezés vagy elhagyás. Aktív, az "egér" görgetőjének használatakor is. Példa: Egér a hivatkozási link felett, meghatározásra. a:hover{text-decoration: underline; color: black; background-color: yellow; } Ez egy teszt hivatkozás. A hover teszteléséhez, mozgassuk ide az egérkurzort. |
Mozgassuk ide kurzort,
és hagyjuk el területeket. |
Űrlap mouse, azaz, "egér" események. | ||
focus vagy focusin |
Aktiválódik űrlapmezőre történő belépéskor. Űrlapelemek területén: 1. Egérrel kattintottak. 2. Beléptek a Tab billentyűvel. Elsősorban, űrlapelemeknél van értelme. ( A form és formelemeknél.) Használhatjuk olyan elemeknél, melyek műveleti funkciót töltenek be. ( form; formelemek; button; horgony a ) Új teszteléshez, üssük le az "F5" billentyűt! $(document).ready(function(){ $("#formfocus>input").focus(function(){ $(this).css("border", "5px solid blue"); }); $("#formfocus>textarea").focus(function(){ $(this).css("border", "5px solid blue"); }); // -- id="valami" azonosítóval rendelkező tag, azaz, jelölőelem területén. ---- $("#valami>a").focus(function(){ $(this).css("border", "5px solid blue"); }); $("#valami>button").focus(function(){ $(this).css("border", "5px solid blue"); }); }); |
Kattintsunk, beviteli mezőkre. |
focusout vagy blur |
Aktiválódik űrlapmezőre kattintás után, ha bevitelimezőn kívül kattintunk. Űrlapelemek területén: 1. Egérrel bevitelimezőn kattintottak, majd azon kívül kattintottak. 2. Beléptek a "Tab" billentyűvel, majd ismét lenyomták "Tab" billentyűt. Elsősorban, űrlapelemeknél van értelme. ( A form és formelemeknél.) Megjegyzés: A focusout-nak, elegendő azon szülő jelölőelem meghatározása, melyben a bevitelimezők találhatók. Például: $("form").focusout(function(){...} A blur-nak, meg kell határozni szülő jelölőelemet, és azon gyermek elemet, melyre az esemény vonatkozik, vagy egyedi "id' azonosítóját. Például: $("form>input").blur(function(){...} Új teszteléshez, üssük le az "F5" billentyűt! $(document).ready(function(){ $("#formfocusout>input").focusout(function(){ $(this).css("background-color", "yellow"); }); $("#formfocusout>textarea").focusout(function(){ $(this).css("background-color", "yellow"); }); // -- id="valami" azonosítóval rendelkező tag, azaz, jelölőelem területén. ---- $("#valami>button").focusout(function(){ $(this).css("background-color", "yellow"); }); }); |
Kattintsunk, beviteli mezőkre, majd mezőn kívülre. </form> |
select |
Aktiválódik, ha a szövegmező tartalmát, vagy annak egy részét, kijelölték. Másolás, törlés, módosítás céljából. <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("#input1").select(function(){ alert(" Ön, ezen a területen, szöveget vagy szövegrészt, kijelölt!"); }); }); </script> </head> <body> <input type="text" id="input1" value="Jelöld ki szöveget, vagy egy részét." size="60"> </body> |
Beviteli mezőkben, jelöljünk ki szöveget, vagy annak egy részét. </form> |
Eseményekhez, néhány gyakran alkalmazott meghatározás. | ||
event.pageX |
Visszaadja "egérkurzor" left pozícióját, dokumentum bal szélétől. Érvényes a teljes <body>, azaz, dokumentum területére. document.mousemove.event.pageX; |
|
event.pageY |
Visszaadja "egérkurzor" top pozícióját, dokumentum felső szélétől. Érvényes a teljes <body>, azaz, dokumentum területére. Nem aktív, az "egér" görgetőjének használatakor. document.mousemove.event.pageY; |
|
event.target |
Visszaadja annak a tagnak, jelölőelemnek információit, mely felett egérkurzor tartózkodik. Érvényes a teljes <body>, azaz, dokumentum területére, vagy lekorlátozhatjuk kiválasztott jelölőelem területére. <script> $(document).ready(function(){ $("#kivalasztott").mouseover(function(event){ $("#nev_kiiratas").html(event.target.nodeName); }); }); </script> |
Tag neve = <p> p tag <p> p tag <p>Fotó következik.</p> |
Események | HTML fájlban események meghatározása. |
JavaScript-ben események meghatározása. |
---|---|---|
A body elemben meghatározott esemény, vagy események, az egész dokumentum területére érvényes. <body esemény_neve="Function_meghívása()"> |
object.esemény_neve = function(){ Meghatározás vagy meghatározások, az egész dokumentum területére érvényesek. }; id = document.getElementById("elem_id_azonosítóneve") id.esemény_neve = function(){ Meghatározás vagy meghatározások, csak az id-vel azonosított területre érvényesek. }; |
|
|
|
|
JavaScript jQuery változatában eseményeket, így határozzuk meg. // Megjegyzés: "id" helyett, azon elem egyedi azonosítónevét írjuk be, melyre az esemény, érvényes. $(document).ready(function(){ $("#id").click(function(){ alert("Egyszer kattintottál."); }); $("#id").dblclick(function(){ alert("Duplán kattintottál."); }); $("#id").mousedown(function(){ alert("Lenyomtad a billentyűt."); }); $("#id").mouseup(function(){ alert("Felengedted a billentyűt."); }); $("#id").mouseenter(function(){ alert("Megérkeztél."); }); $("#id").mouseover(function(){ alert("Megérkeztél területekhez."); }); $("#id").mousemove(function(){ alert("Mozoghatsz a területen."); }); $("#id").mouseleave(function(){ alert("Távoztál."); }); $("#id").mouseout(function(){ alert("Távoztál területekről."); }); // A hover, elsősorban szöveges vagy képformátumú hivatkozási linkek területére alkalmazandó. // De alkalmazhatjuk más kiválasztott területre is. // A hover () metódusnak, kettő meghatározott funkciója van. // A kettő function módszer váltja ki, a mouseenter és mouseleave eseményeket. $("#id").hover(function(){ alert("Beléptél kijelölt területre."); }, function(){ alert("Kiléptél kijelölt területről."); }); // -------- Melyik egérbillentyűt nyomtuk le. ----------------------- $('#id').mousedown(function(event) { switch (event.which) { case 1: alert(' Left-balos \n Mouse billentyűt \n lenyomtad.'); break; case 2: alert('Middle-Középső \n Mouse billentyűt \n lenyomtad.'); break; case 3: alert(' Right-jobbos \n Mouse billentyűt \n lenyomtad.'); break; default: alert('Van egy furcsa egér!'); } }); // Egér pozíciója. ------------------------------------------------------- $(document).mousemove(function(event){ $("#id").html("X = "+ event.pageX + ", Y = " + event.pageY); }); // ---- Egér görgetése.--------------------------- document.getElementById("idwheel").onwheel = function(){WheelGorget()}; function WheelGorget() { document.getElementById("idwheel").style.fontSize = "35px"; } // ---- Egér, görgetési területet elhagyta ---- document.getElementById("idwheel").onmouseleave = function(){WheelVege()}; function WheelVege() { document.getElementById("idwheel").style.fontSize = "15px"; } }); |
Megjegyzés:
JavaScriptben az addEventListener() metódussal is, használható esemény meghívása.
De, az addEventListener() metódus nem támogatott az Internet Explorer 8 és korábbi verzióiban, kivétel a wheel meghatározás.
Példa:
<script> object.addEventListener("mousemove", MoveScript); function MoveScript() { alert("Mozoghatsz a területen."); } </script>
Ezek a kiválasztott területek, nem tartalmaznak leszármazott tag jelölőelemeket, csak sorlezáró <br> elemet. Eseméy, a kiválasztott jelölőelem teljes területére érvényes. onMouseOver esemény bekövetkezik kiválasztott területre érkezéskor. onMouseEnter esemény bekövetkezik kiválasztott területre érkezéskor. onMouseOut esemény bekövetkezik kiválasztott terület elhagyásakor. onMouseLeave esemény bekövetkezik kiválasztott terület elhagyásakor. | |
jQuery onMouseOver üzenet: |
jQuery onMouseEnter üzenet: |
<br> Első szövegfolyam: Ez a kiválasztott terület,<br> nem tartalmaz leszármazottakat.<br> <br><br><br> Második szövegfolyam: és tartalma.<br> <br><br><br><br> Harmadik szövegfolyam: és tartalma.<br> <br><br><br><br> Negyedik szövegfolyam:<br> Teszt ismétléséhez,<br> űssük le az F5 billentyűt.<br> <br> |
<br> Első szövegfolyam: Ez a kiválasztott terület,<br> nem tartalmaz leszármazottakat.<br> <br><br><br> Második szövegfolyam: és tartalma.<br> <br><br><br><br> Harmadik szövegfolyam: és tartalma.<br> <br><br><br><br> Negyedik szövegfolyam:<br> Teszt ismétléséhez,<br> űssük le az F5 billentyűt.<br> <br> |
Ezek a kiválasztott <div> területek, tartalmaznak leszármazottakat. <p>, <span>, <strong>, <img> Eseménynél, itt már eltérések vannak. onMouseOver esemény bekövetkezik kiválasztott területre érkezéskor és a területen elhelyezett tag jelölőelemek területére érkezéskor is. onMouseEnter esemény bekövetkezik, csak a kiválasztott területre érkezéskor. A területen elhelyezett tag jelölőelemek területére érkezést, nem veszi figyelembe. onMouseOut esemény bekövetkezik kiválasztott terület elhagyásakor, és a területen elhelyezett tag jelölőelemek területének elhagyásakor is. | |
jQuery onMouseOver mouseout üzenet: |
jQuery onMouseEnter mouseout üzenet: |
<p>Első szövegfolyam: Ez a kiválasztott terület,<br> <p>Második szövegfolyam:<br> <p> Harmadik szövegfolyam:<br> |
<p>Első szövegfolyam: Ez a kiválasztott terület,<br> <p>Második szövegfolyam:<br> <p> Harmadik szövegfolyam:<br> |
Ezek a kiválasztott <div> területek, tartalmaznak leszármazottakat. <p>, <span>, <strong>, <img> Eseménynél, itt is, eltérések vannak. onMouseOver esemény bekövetkezik kiválasztott területre érkezéskor és a területen elhelyezett tag jelölőelemek területére érkezéskor is. onMouseEnter esemény bekövetkezik, csak a kiválasztott területre érkezéskor. A területen elhelyezett tag jelölőelemek területére érkezést, nem veszi figyelembe. onMouseLeave esemény bekövetkezik, csak a kiválasztott terület elhagyásakor. A területen elhelyezett tag jelölőelemek területének elhagyását, nem veszi figyelembe. | |
jQuery onMouseOver mouseleave üzenet: |
jQuery onMouseEnter mouseleave üzenet: |
<p>Első szövegfolyam: Ez a kiválasztott terület,<br> <p>Második szövegfolyam:<br> <p> Harmadik szövegfolyam:<br> |
<p>Első szövegfolyam: Ez a kiválasztott terület,<br> <p>Második szövegfolyam:<br> <p> Harmadik szövegfolyam:<br> |