JS - לאחסן האזנה לאירוע במשתנה

  • הוסף לסימניות
  • #1
אני רוצה ליצור האזנה לאירוע. או במילים פשוטות פעולה כגון דא:
קוד:
$(element).click(function(e){
//do samthing
})
אני רוצה בשלב מסויים לבטל את האירוע. שהקליק על האלמנט לא יעיל את הפונקציה הנ"ל.
יכולתי פשוט להשתמש ב
קוד:
$(element).off("click")
אלא מאי? יש לי עוד האזנות נוספות לאותו אירוע, קרי לקליקים על אותו אלמנט. אני רוצה לבטל רק את ההאזנה הספציפית הזו. אם היה משהו כמו
קוד:
var event =  $(element).click(function(e){
//do samthing
})
event.off()
היה נפלא. אני מניח שחייב להיות משהו כזה.
תודה רבה
 
  • הוסף לסימניות
  • #2
הפתרון הוא לאחסן את הקוד שאמור לקרות בתוך משתנה פונקציה, ואז אפשר להשתמש בunbind.
(לא מצליחה להכניס פה קוד בצורה נורמלית, קופץ לי הכל מימין לשמאל)
פה יש הסבר ברור יותר, אבל באנגלית...
 
  • הוסף לסימניות
  • #3
הפתרון הוא לאחסן את הקוד שאמור לקרות בתוך משתנה פונקציה, ואז אפשר להשתמש בunbind.
(לא מצליחה להכניס פה קוד בצורה נורמלית, קופץ לי הכל מימין לשמאל)
פה יש הסבר ברור יותר, אבל באנגלית...
תודה רבה! (לא סופית, אני צריך לבדוק שזה עובד)
 
  • הוסף לסימניות
  • #5
אם אתה אתה מעוניין שהאזנה לפונקציה תהיה פעם אחת אפשר להשתמש בone
לדוגמא:
קוד:
$( "#foo" ).one( "click", function() {
  alert( "This will be displayed only once." );
});

לאחר לחיצה אחת האזנה תתבטל
http://api.jquery.com/one/

או לחילופין ניתן להגדיר תנאי מסויים שיפסיק את האזנה לאירוע ע"י OFF
קוד:
$( "#foo" ).on( "click", function( event ) {
  alert( "abcd" );
  a+=3;
  if(a>b){
      $( this ).off( event );
  }
});
 
  • הוסף לסימניות
  • #6
דרך אגב, ממליץ להיגמל מJQUERY. הדבר הזה הולך לעבור מן העולם עוד מעט. ועדיף לצבור ידע שיישאר רלוונטי גם פריימוורק אחר.
כל הדברים האלה אפשר לעשות בJS נקי בקלות.
 
  • הוסף לסימניות
  • #7
@s976 אשמח אם תאיר את עינינו, מה הולך להחליף את jQuery?

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

פרוגבוט

תוכן שיווקי
פרסומת

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק כה

אלְדָוִד אֵלֶיךָ יי נַפְשִׁי אֶשָּׂא:באֱלֹהַי בְּךָ בָטַחְתִּי אַל אֵבוֹשָׁה אַל יַעַלְצוּ אֹיְבַי לִי:גגַּם כָּל קוֶֹיךָ לֹא יֵבֹשׁוּ יֵבֹשׁוּ הַבּוֹגְדִים רֵיקָם:דדְּרָכֶיךָ יי הוֹדִיעֵנִי אֹרְחוֹתֶיךָ לַמְּדֵנִי:ההַדְרִיכֵנִי בַאֲמִתֶּךָ וְלַמְּדֵנִי כִּי אַתָּה אֱלֹהֵי יִשְׁעִי אוֹתְךָ קִוִּיתִי כָּל הַיּוֹם:וזְכֹר רַחֲמֶיךָ יי וַחֲסָדֶיךָ כִּי מֵעוֹלָם הֵמָּה:זחַטֹּאות נְעוּרַי וּפְשָׁעַי אַל תִּזְכֹּר כְּחַסְדְּךָ זְכָר לִי אַתָּה לְמַעַן טוּבְךָ יי:חטוֹב וְיָשָׁר יי עַל כֵּן יוֹרֶה חַטָּאִים בַּדָּרֶךְ:טיַדְרֵךְ עֲנָוִים בַּמִּשְׁפָּט וִילַמֵּד עֲנָוִים דַּרְכּוֹ:יכָּל אָרְחוֹת יי חֶסֶד וֶאֱמֶת לְנֹצְרֵי בְרִיתוֹ וְעֵדֹתָיו:יאלְמַעַן שִׁמְךָ יי וְסָלַחְתָּ לַעֲוֹנִי כִּי רַב הוּא:יבמִי זֶה הָאִישׁ יְרֵא יי יוֹרֶנּוּ בְּדֶרֶךְ יִבְחָר:יגנַפְשׁוֹ בְּטוֹב תָּלִין וְזַרְעוֹ יִירַשׁ אָרֶץ:ידסוֹד יי לִירֵאָיו וּבְרִיתוֹ לְהוֹדִיעָם:טועֵינַי תָּמִיד אֶל יי כִּי הוּא יוֹצִיא מֵרֶשֶׁת רַגְלָי:טזפְּנֵה אֵלַי וְחָנֵּנִי כִּי יָחִיד וְעָנִי אָנִי:יזצָרוֹת לְבָבִי הִרְחִיבוּ מִמְּצוּקוֹתַי הוֹצִיאֵנִי:יחרְאֵה עָנְיִי וַעֲמָלִי וְשָׂא לְכָל חַטֹּאותָי:יטרְאֵה אוֹיְבַי כִּי רָבּוּ וְשִׂנְאַת חָמָס שְׂנֵאוּנִי:כשָׁמְרָה נַפְשִׁי וְהַצִּילֵנִי אַל אֵבוֹשׁ כִּי חָסִיתִי בָךְ:כאתֹּם וָיֹשֶׁר יִצְּרוּנִי כִּי קִוִּיתִיךָ:כבפְּדֵה אֱלֹהִים אֶת יִשְׂרָאֵל מִכֹּל צָרוֹתָיו:
נקרא  2  פעמים
למעלה