jQuery – Events – אירועים חלק ב'

חלקו השני של המאמר על אירועים ב-Jquery. במאמר מפורטים אירועים שונים נוספים ושימושיים להפליא.

מאמר זה מהווה המשך למאמר על האירועים שיש ב-jQuery. סקרנו את אירוע ה-on שקושר בין אלמנט, לאירוע ולפונקציה שתופעל בעקבות האירוע הזה. גם במאמר הזה אני אשתמש בפונקצית alert פשוטה ובאלמנט של פסקה עם id מסוים.

trigger

trigger משמש אותנו לקשירה בין אירועים שונים. נניח שיש לי שתי פסקאות: פסקה א' ופסקה ב'. אני מעוניין שלחיצה על פסקה א' תפעיל הודעה מעצבנת א' ולחיצה על פסקה ב' תפעיל גם הודעה מעצבנת ב' וגם את מה שלחיצה על פסקה א' מפעילה.

זה שימושי במיוחד כאשר יש לי ממשקים מסובכים שבהם יש לי סכימה של כל הטורים שסימנתי וכפתור שמבצע שליחה של הסכימה. באמצעות trigger לחיצה על הכפתור השני תבצע גם את הפעולה של הכפתור הראשון.

איך עושים את זה? בקלות.

פסקה ראשונה

פסקה שניה


<script type="text/javascript"> 
$(document).ready(function() {
$("#example1").on("click" , function () {
alert("הודעה מעצבנת ראשונה");
});
$("#example2").on("click" , function () {
alert("הודעה מעצבנת שניה");
$("#example1").trigger("click");
});
 });
</script>

אפשר להשתמש גם באירוע triggerHandler שעושה את אותו הדבר כמו trigger רק עם הבדל חשוב אחד (לפחות מבחינת המאמר הזה) הוא מונע מהאלמנט שהופעל לקבל התנהגות של 'מופעל' מבחינת הדפדפן. זה קצת מסובך להסבר, תחשבו למשל על כפתור שיש לו אירוע של קליק, בדפדפני אינטרנט מסוימים אחרי שיש עליו קליק, או טריגר של קליק, יש מסגרת אפורה מסביבו. אם אני אשתמש ב-triggerHandler לא תהיה את המסגרת האפורה מסביבו. לא הבנתם? לא נורא.

hover

hover הוא כמו toggle רק שבמקום קליקים מדובר על hover. יש פונקציה אחת כאשר העכבר מרחף מעל האלמנט ופונקציה שניה כאשר העכבר לא מרחף מעל האלמנט. הייתי מדגים עם alert אך כיוון שרוב הזמן העכבר יהיה מחוץ לאלמנט זה יגרום לעוד ועוד alertים מעצבנים. לפיכך משתמש באפקט של CSS.

העבירו מעלי את העכבר


$(document).ready(function() {
$("#example4").hover(function () {
$(this).css("color","red");
} , function () {
$(this).css("color","black");
});
 });

Multiple bind

אני יכול לבצע bind לכמה פונקציות באותה פקודה. נניח שיש לי פסקה שאני רוצה לקשור אליה גם אירוע של לחיצה וגם אירוע של mouse in ן-mouse out. כל מה שאני צריך לעשות זה להעביר ל-on אובייקט שמכיל את כל האירועים שאני רוצה לקשור אליהם.

הקליקו על הפסקה הזו על מנת לראות הודעה. העבירו את העכבר מעל הפסקה כדי לראות את הצבע משתנה

וככה זה נראה, שימו לב איך האובייקטים מסודרים יפה ובאופן אלגנטי. הרבה יותר נעים להשתמש ב-bind ובמיוחד כאשר אנו צריכים לקשור כמה אירועים לאלמנט אחד.


$(document).ready(function() {
$("#example16").on({
	click: function () {
		alert("הודעה");
	},
   	mouseover: function() {  
	        $(this).css("color","red");
    	},  
    	mouseout: function() {  
	        $(this).css("color","black");
   	},
});
});

עד כאן בנוגע לאירועים. עכשיו אחרי שלמדנו על ה-selectors ועל ה-events אנו יכולים לגשת לשלב השלישי והיותר מהנה – הפונקציות המגניבות שאפשר להפעיל באמצעות jQuery. כשעכשיו אנו יכולים להפעיל אותן על כל אלמנט ובעקבות איזה אירוע. במאמר הבא אני מראה חלק מהפונקציות האלו.

פוסטים נוספים שכדאי לקרוא

מיקרו בקרים

חיבור מצלמה למיקרובקר

חיבור מצלמה למיקרו בקר ויצירה של מצלמת אבטחה מרחוק בעלות של 20 שקל.

רספברי פיי

הרצת גו על רספברי פיי

עולם הרספברי פיי והמייקרים ניתן לתפעול בכל שפה – לא רק פייתון או C – כאן אני מסביר על גו

DALL·E 2023-10-21 22.28.58 - Photo of a computer server room with red warning lights flashing, indicating a potential cyber threat. Multiple screens display graphs showing a sudde
יסודות בתכנות

מבוא לאבטחת מידע: IDOR

הסבר על התקפה אהובה ומוצלחת שבאמצעותה שואבים מידע מאתרים

בינה מלאכותית

להריץ ממשק של open-webui על הרספברי פיי

להפעיל ממשק של צ׳אט ג׳יפיטי שאפשר לגשת אליו מכל מחשב ברשת הביתית על רספברי פיי עם מודל בשם tinydolphin שרץ על רספברי פיי.

גלילה לראש העמוד