if എന്നതിൻ്റെ Javascript ഷോർട്ട്‌ഹാൻഡ്. സോപാധിക പ്രസ്താവന വേറെയുണ്ടെങ്കിൽ. ലൂപ്പ് എക്സിറ്റ് സ്റ്റേറ്റ്‌മെൻ്റുകൾ തകർന്ന് JavaScript-ൽ തുടരുക. എക്സിറ്റ് സ്റ്റേറ്റ്മെൻ്റ്

JavaScript EventTarget നിർവചനവും ആപ്ലിക്കേഷനും

ഒരു ഇവൻ്റ് ടാർഗെറ്റ് ഒബ്‌ജക്റ്റിൻ്റെ JavaScript addEventListener() രീതി ഒരു നിർദ്ദിഷ്ട ലക്ഷ്യത്തിനായി ഒരു നിർദ്ദിഷ്ട തരത്തിലുള്ള ഇവൻ്റ് ഹാൻഡ്‌ലർ രജിസ്റ്റർ ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു.

എലമെൻ്റ്, ഡോക്യുമെൻ്റ്, വിൻഡോ, അല്ലെങ്കിൽ ഇവൻ്റുകൾ പിന്തുണയ്ക്കുന്ന മറ്റേതെങ്കിലും ഒബ്‌ജക്‌റ്റുകൾ പോലെയുള്ള ഒബ്‌ജക്‌റ്റുകൾ ആകാം ടാർഗെറ്റ്, ഉദാഹരണത്തിന്, അസിൻക്രണസ് അഭ്യർത്ഥനകളിൽ വ്യാപകമായി ഉപയോഗിക്കുന്ന XMLHttpRequest പോലുള്ള ഒരു ഒബ്‌ജക്റ്റ്. അജാക്സ്(ഇംഗ്ലീഷിൽ നിന്ന് അസിൻക്രണസ് ജാവാസ്ക്രിപ്റ്റും XML ഉം- "അസിൻക്രണസ് JavaScript ഉം XML ഉം"), ഇത് ഉപയോക്തൃ അനുഭവത്തെ തടസ്സപ്പെടുത്താതെ അതിൻ്റെ ഒരു ഭാഗം മാത്രം അപ്‌ഡേറ്റ് ചെയ്യാൻ ഒരു നിർദ്ദിഷ്‌ട പേജിനെ അനുവദിക്കുന്നു.

addEventListener() രീതി ഉപയോഗിച്ച് അറ്റാച്ച് ചെയ്‌തിരിക്കുന്ന ഒരു ഇവൻ്റ് ഹാൻഡ്‌ലർ നീക്കംചെയ്യുന്നതിന് നിങ്ങൾക്ക് removeEventListener() രീതി ഉപയോഗിക്കാനാകുമെന്നത് ശ്രദ്ധിക്കുക.

JavaScript വാക്യഘടനയ്ക്കുള്ള ബ്രൗസർ പിന്തുണ: ലക്ഷ്യം.addEventListener( തരം, കേൾവിക്കാരൻ); ലക്ഷ്യം.addEventListener( തരം, കേൾവിക്കാരൻ, ഓപ്ഷനുകൾ); ലക്ഷ്യം.addEventListener( തരം, കേൾവിക്കാരൻ, ക്യാപ്ചർ ഉപയോഗിക്കുക); തരം- സ്ട്രിംഗ് കേൾവിക്കാരൻ- പ്രവർത്തനം ഓപ്ഷനുകൾ- വസ്തു ക്യാപ്ചർ ഉപയോഗിക്കുക- ബൂളിയൻ സ്പെസിഫിക്കേഷൻ ഡോക്യുമെൻ്റ് ഒബ്ജക്റ്റ് മോഡൽ (DOM) ലെവൽ 2 ഇവൻ്റുകൾ പാരാമീറ്റർ മൂല്യങ്ങൾ പാരാമീറ്റർ വിവരണം
തരം കേൾക്കേണ്ട ഇവൻ്റിൻ്റെ തരത്തെ പ്രതിനിധീകരിക്കുന്ന ഒരു സ്ട്രിംഗ് മൂല്യം (മൂല്യം കേസ് സെൻസിറ്റീവ് ആണ്). ആവശ്യമായ പാരാമീറ്റർ.
കേൾവിക്കാരൻ നിർദ്ദിഷ്ട തരത്തിലുള്ള ഒരു ഇവൻ്റ് സംഭവിക്കുമ്പോൾ അറിയിപ്പ് ലഭിക്കുന്ന ഒബ്‌ജക്റ്റ് (ഇവൻ്റ് ഇൻ്റർഫേസ് നടപ്പിലാക്കുന്ന ഒരു വസ്തു). ഇത് EventListener ഇൻ്റർഫേസ് അല്ലെങ്കിൽ ഒരു ഫംഗ്ഷൻ നടപ്പിലാക്കുന്ന ഒരു ഒബ്ജക്റ്റ് ആയിരിക്കണം ജാവാസ്ക്രിപ്റ്റ്. ആവശ്യമായ പാരാമീറ്റർ.
ഓപ്ഷനുകൾ ഇവൻ്റ് ശ്രോതാവിൻ്റെ സവിശേഷതകൾ സൂചിപ്പിക്കുന്ന ഒരു വസ്തു (ഓപ്ഷണൽ).
ലഭ്യമായ ഓപ്ഷനുകൾ:
  • ക്യാപ്‌ചർ - ഏതെങ്കിലും EventTarget-ലേക്ക് അയയ്‌ക്കുന്നതിന് മുമ്പ് ഇത്തരത്തിലുള്ള ഇവൻ്റുകൾ രജിസ്റ്റർ ചെയ്ത ശ്രോതാവിന് (ഇവൻ്റ് ഹാൻഡ്‌ലർ) അയയ്‌ക്കണോ എന്ന് നിർണ്ണയിക്കുന്ന ഒരു ബൂളിയൻ മൂല്യം DOM. നിങ്ങൾ ബൂളിയൻ മൂല്യം true പാസ്സാക്കുകയാണെങ്കിൽ, ഫംഗ്‌ഷൻ ഒരു ഇൻ്റർസെപ്ഷൻ ഹാൻഡ്‌ലറായി രജിസ്റ്റർ ചെയ്യപ്പെടുകയും ഇൻ്റർസെപ്ഷൻ ഘട്ടത്തിൽ വിളിക്കുകയും ചെയ്യും ( പിടിച്ചെടുക്കൽ ഘട്ടംബബ്ലിംഗ് ഘട്ടം).
  • ഒരിക്കൽ - ഇവൻ്റ് ഹാൻഡ്‌ലർ ചേർത്തതിന് ശേഷം ഒന്നിൽ കൂടുതൽ തവണ വിളിക്കരുതെന്ന് വ്യക്തമാക്കുന്ന ഒരു ബൂളിയൻ മൂല്യം. ബൂളിയൻ മൂല്യം ശരിയാണെങ്കിൽ, വിളിക്കുമ്പോൾ ശ്രോതാവ് സ്വയമേവ നീക്കം ചെയ്യപ്പെടും.
  • നിഷ്ക്രിയ - ഒരു ബൂളിയൻ മൂല്യം, ശരിയാണെങ്കിൽ, ശ്രോതാവ് വ്യക്തമാക്കിയ ഫംഗ്‌ഷൻ ഇവൻ്റിൻ്റെ ഡിഫോൾട്ട് പ്രവർത്തനം ഒരിക്കലും റദ്ദാക്കില്ലെന്ന് സൂചിപ്പിക്കുന്നു (കോൾ തടയുക() തടയാൻ ഡിഫോൾട്ട്() കൂടാതെ കൺസോളിൽ അങ്ങനെ ചെയ്യുമ്പോൾ ഉപയോക്താവിൻ്റെ ബ്രൗസർ അത് അവഗണിക്കുകയും മുന്നറിയിപ്പ് സൃഷ്ടിക്കുകയും ചെയ്യും .
ക്യാപ്ചർ ഉപയോഗിക്കുക ഈ തരത്തിലുള്ള ഇവൻ്റുകൾ ട്രീയിൽ സ്ഥിതി ചെയ്യുന്ന ഏതെങ്കിലും EventTarget-ലേക്ക് അയയ്‌ക്കുന്നതിന് മുമ്പ് രജിസ്റ്റർ ചെയ്ത ശ്രോതാവിന് (ഇവൻ്റ് ഹാൻഡ്‌ലർ) അയയ്‌ക്കണോ എന്ന് നിർണ്ണയിക്കുന്ന ഒരു ബൂളിയൻ മൂല്യം DOM.
നിങ്ങൾ ബൂളിയൻ മൂല്യം true പാസ്സാക്കുകയാണെങ്കിൽ, ഫംഗ്‌ഷൻ ഒരു ഇൻ്റർസെപ്ഷൻ ഹാൻഡ്‌ലറായി രജിസ്റ്റർ ചെയ്യപ്പെടുകയും ഇൻ്റർസെപ്ഷൻ ഘട്ടത്തിൽ വിളിക്കുകയും ചെയ്യും ( പിടിച്ചെടുക്കൽ ഘട്ടം). ഡിഫോൾട്ട് മൂല്യം തെറ്റാണ് - ഇവൻ്റ് ഹാൻഡ്‌ലർ ബബ്ലിംഗ് ഘട്ടത്തിൽ ഫയർ ചെയ്യും ( ബബ്ലിംഗ് ഘട്ടം). ഓപ്ഷണൽ പാരാമീറ്റർ. പരാമീറ്റർ ക്യാപ്ചർ ഉപയോഗിക്കുകഎല്ലായ്‌പ്പോഴും ഓപ്‌ഷണൽ ആയിരുന്നില്ല, വിശാലമായ ബ്രൗസർ പിന്തുണയ്‌ക്കായി നിങ്ങൾ ഇത് പ്രാപ്‌തമാക്കും.
ഉപയോഗ ഉദാഹരണം JavaScript addEventListener() രീതി ഉപയോഗിച്ച് രീതിയുടെ അടിസ്ഥാന ഉപയോഗം
  • 1
const ul = പ്രമാണം .querySelector("ul "), // പ്രമാണ പട്ടികയിലെ ആദ്യ ul ഘടകം തിരഞ്ഞെടുക്കുകElements = പ്രമാണം .querySelectorAll("li "); // പ്രമാണത്തിലെ എല്ലാ ലി ഘടകങ്ങളും തിരഞ്ഞെടുക്കുക const myFunc = ഫംഗ്ഷൻ ( സംഭവം) ( എങ്കിൽ ( സംഭവം.target.tagName === "LI ") ( // ഇവൻ്റ് അയച്ച ഒബ്‌ജക്റ്റിന് LI ന് തുല്യമായ ടാഗ് നെയിം പ്രോപ്പർട്ടി മൂല്യമുണ്ടെങ്കിൽ സംഭവം.target.style.color = "പച്ച"; // തുടർന്ന് ടെക്സ്റ്റ് നിറം പച്ചയായി സജ്ജീകരിക്കുക)) ; ഉൾ.addEventListener("ക്ലിക്ക്", myFunc); // ക്ലിക്ക് ഇവൻ്റ് ഹാൻഡ്‌ലർ ul എലമെൻ്റിലേക്ക് സജ്ജമാക്കുക ലിസ്റ്റ് ഘടകങ്ങൾ.ഓരോന്നിനും(ഫംഗ്ഷൻ ( ഇലം) ( // ശേഖരത്തിൻ്റെ എല്ലാ ഘടകങ്ങളിലൂടെയും പോകുക ഇലം.addEventListener("dblclick", ഫംഗ്‌ഷൻ ()( // ഓരോ ലി എലമെൻ്റും ഒരു dblclick ഇവൻ്റ് ഹാൻഡ്‌ലറായി സജ്ജമാക്കുക .style.color = "#000"; // ടെക്‌സ്‌റ്റ് കളർ കറുപ്പായി സജ്ജമാക്കുക)))

ഈ ഉദാഹരണത്തിൽ, ഞങ്ങൾ ഒരു ബുള്ളറ്റഡ് ലിസ്റ്റ് സ്ഥാപിച്ചു (

    ), അതിനുള്ളിൽ ഞങ്ങൾ സ്ഥാപിച്ചു അഞ്ച്ലിസ്റ്റ് ഘടകങ്ങൾ (
  • ). ഞങ്ങൾ തിരഞ്ഞെടുത്ത querySelector() രീതി ഉപയോഗിച്ച് ആദ്യംഘടകം
      പ്രമാണത്തിൽ, കൂടാതെ querySelectorAll() രീതി ഉപയോഗിച്ച്, എല്ലാ ഘടകങ്ങളും
    • പ്രമാണത്തിൽ, ഈ മൂല്യങ്ങളുള്ള വേരിയബിളുകൾ സമാരംഭിച്ചു.

      addEventListener() രീതി ഉപയോഗിച്ച് ഞങ്ങൾ ഘടകം സജ്ജമാക്കുന്നു

        ഇവൻ്റ് ഒബ്‌ജക്റ്റിൻ്റെ ടാർഗെറ്റ് പ്രോപ്പർട്ടി ഉപയോഗിച്ച് എലമെൻ്റിൻ്റെ ടാഗ് നാമം പരിശോധിക്കുന്ന ഒരു "ക്ലിക്ക്" ഇവൻ്റ് ഹാൻഡ്‌ലർ (ഒരു ഘടകത്തിൽ ഇടത്-ക്ലിക്കുചെയ്യൽ), ഈ മൂല്യം "LI" മൂല്യവുമായി പൊരുത്തപ്പെടുന്നുവെങ്കിൽ, ടെക്‌സ്‌റ്റ് വർണ്ണ ശൈലി മാറ്റുന്നു പച്ചട്രിഗർ ചെയ്യുമ്പോൾ. ഓരോ ഘടകത്തിനും വെവ്വേറെ ഒരു ഹാൻഡ്‌ലർ ഇൻസ്റ്റാൾ ചെയ്യുന്നത് പലപ്പോഴും കൂടുതൽ സൗകര്യപ്രദമാണെന്നത് ശ്രദ്ധിക്കുക, മൂലകങ്ങളുടെ എണ്ണം ചലനാത്മകമായി മാറുമ്പോൾ ഇത് പ്രത്യേകിച്ചും സത്യമാണ്, ഈ സാഹചര്യത്തിൽ ഘടകങ്ങൾക്ക് ഹാൻഡ്‌ലറുകൾ അപ്‌ഡേറ്റ് ചെയ്യേണ്ട ആവശ്യമില്ല.

        ബൂളിയൻ മൂല്യം ശരിയാണെങ്കിൽ, ശ്രോതാവ് വ്യക്തമാക്കിയ ഫംഗ്‌ഷൻ ഇവൻ്റിൻ്റെ ഡിഫോൾട്ട് പ്രവർത്തനം ഒരിക്കലും റദ്ദാക്കില്ല (പ്രതിരോധ ഡിഫോൾട്ട്() രീതി വിളിക്കുക). ഇവൻ്റ് ഹാൻഡ്‌ലർ തടയൽ ഡിഫോൾട്ട്() രീതിയിലേക്ക് വിളിക്കുകയാണെങ്കിൽ, ഉപയോക്താവിൻ്റെ ബ്രൗസർ അത് അവഗണിക്കുകയും കൺസോളിൽ ഒരു മുന്നറിയിപ്പ് സൃഷ്ടിക്കുകയും ചെയ്യും. ഹാൻഡ്‌ലർ ഫംഗ്‌ഷന് ഇവൻ്റിൻ്റെ ഡിഫോൾട്ട് പ്രവർത്തനം റദ്ദാക്കാനാകുമെന്ന് തെറ്റിൻ്റെ ഒരു ബൂളിയൻ മൂല്യം സൂചിപ്പിക്കുന്നു (ഇതിന് തടയൽ ഡിഫോൾട്ട്() രീതി എന്ന് വിളിക്കാം).

        സ്പെസിഫിക്കേഷൻ അനുസരിച്ച്, നിഷ്ക്രിയ പരാമീറ്ററിനുള്ള ഡിഫോൾട്ട് മൂല്യം എല്ലായ്പ്പോഴും തെറ്റാണ്. എന്നിരുന്നാലും, സ്ക്രോളിംഗ് കൈകാര്യം ചെയ്യാൻ ശ്രമിക്കുമ്പോൾ പ്രധാന ബ്രൗസർ ത്രെഡ് തടയാൻ ചില ടച്ച് ഇവൻ്റുകൾ കൈകാര്യം ചെയ്യുന്ന ഇവൻ്റ് ശ്രോതാക്കളെ ഇത് അനുവദിക്കുന്നു, ഇത് സ്ക്രോളിംഗ് പ്രോസസ്സിംഗ് സമയത്ത് കാര്യമായ പ്രകടന തകർച്ചയ്ക്ക് കാരണമാകും.

        ഈ പ്രശ്നം തടയാൻ, ചില ബ്രൗസറുകൾ (പ്രത്യേകിച്ച് ഒപ്പം ) വിൻഡോ , ഡോക്യുമെൻ്റ് , ഡോക്യുമെൻ്റ് .ബോഡി ഡോക്യുമെൻ്റ് ലെവൽ നോഡുകളിലെ ടച്ച്സ്റ്റാർട്ട്, ടച്ച്മൂവ് ഇവൻ്റുകൾക്കായി നിഷ്ക്രിയ പാരാമീറ്ററിൻ്റെ ഡിഫോൾട്ട് മൂല്യം ശരിയാക്കി മാറ്റി. ഇത് ഇവൻ്റ് ശ്രോതാവിനെ വിളിക്കുന്നതിൽ നിന്ന് തടയുന്നു, അതിനാൽ സ്ക്രോൾ ചെയ്യുമ്പോൾ പേജ് റെൻഡർ ചെയ്യുന്നതിൽ നിന്ന് തടയാൻ കഴിയില്ല.

        അണ്ടർലൈയിംഗ് സ്ക്രോൾ ഇവൻ്റിനായുള്ള നിഷ്ക്രിയ മൂല്യത്തെക്കുറിച്ച് നിങ്ങൾ വിഷമിക്കേണ്ടതില്ല, കാരണം അത് റദ്ദാക്കാൻ കഴിയില്ല, എന്തായാലും ഇവൻ്റ് ശ്രോതാക്കൾക്ക് പേജ് കാണിക്കുന്നതിൽ നിന്ന് തടയാൻ കഴിയില്ല.

        ഒരു ഇവൻ്റ് ഹാൻഡ്‌ലറിൽ ഇത് ഉപയോഗിക്കുന്നതിൻ്റെ സൂക്ഷ്മതകൾ

        ചട്ടം പോലെ, ഇവൻ്റ് ഹാൻഡ്‌ലർ പ്രവർത്തനക്ഷമമാക്കിയ ഘടകം കൈമാറേണ്ടത് ആവശ്യമാണ്, ഒരേ തരത്തിലുള്ള ഘടകങ്ങൾക്കായി ഒരു ജനറിക് ഇവൻ്റ് ഹാൻഡ്‌ലർ ഉപയോഗിക്കുമ്പോൾ ഇത് പ്രത്യേകിച്ചും സത്യമാണ്. addEventListener() രീതി ഉപയോഗിച്ച് നിങ്ങൾ ഒരു എലമെൻ്റിലേക്ക് ഒരു സാധാരണ ഇവൻ്റ് ഹാൻഡ്‌ലർ ഫംഗ്‌ഷൻ ചേർക്കുകയാണെങ്കിൽ, അത്തരം ഒരു ഹാൻഡ്‌ലറിനുള്ളിലെ ഈ മൂല്യം ഘടകത്തിൻ്റെ റഫറൻസായിരിക്കും. ഇവൻ്റ് ഹാൻഡ്‌ലറിന് കൈമാറിയ ഇവൻ്റ് ഒബ്‌ജക്റ്റിൻ്റെ ഇവൻ്റ് ആർഗ്യുമെൻ്റിൻ്റെ നിലവിലെ ടാർഗെറ്റ് പ്രോപ്പർട്ടിയുടെ മൂല്യത്തിന് തുല്യമായിരിക്കും ഇതിൻ്റെ മൂല്യം, ഉദാഹരണത്തിന്:

        ഇലം.addEventListener("ക്ലിക്ക്", ഫംഗ്‌ഷൻ ( ) (കൺസോൾ .ലോഗ്(ഈ .ക്ലാസ്‌നെയിം); // എലെം എലമെൻ്റ് കൺസോളിൻ്റെ className പ്രോപ്പർട്ടി മൂല്യം കൺസോളിലേക്ക് പ്രിൻ്റ് ചെയ്യും .log( .currentTarget === ഇത് ); //ശരി))

        ഇതിൻ്റെ മൂല്യം മാറുമെന്നത് ശ്രദ്ധിക്കുക, ഉദാഹരണത്തിന് അമ്പടയാള ഫംഗ്‌ഷനുകൾക്ക് അവരുടേതായ ഈ സന്ദർഭം ഇല്ല, ഈ സാഹചര്യത്തിൽ ഇത് ഘടകത്തെ പരാമർശിക്കില്ല:

        ഇലം.addEventListener("ക്ലിക്ക്", ( ) => (കൺസോൾ .ലോഗ്(ഇത് .ക്ലാസ് നെയിം); // ഇത് എലെം എലമെൻ്റ് കൺസോളിനെ പരാമർശിക്കില്ല .ലോഗ്( .currentTarget === ഇത് ); // തെറ്റായ)

        ഇവൻ്റ് ഹാൻഡ്‌ലർ ഒരു ഇവൻ്റ് ആട്രിബ്യൂട്ടായി വ്യക്തമാക്കിയിരിക്കുന്ന മറ്റൊരു സാഹചര്യം നോക്കാം HTMLഘടകം. കോഡ് ജാവാസ്ക്രിപ്റ്റ്ആട്രിബ്യൂട്ട് മൂല്യത്തിൽ, addEventListener() രീതിയുമായി പൊരുത്തപ്പെടുന്ന രീതിയിൽ ഈ മൂല്യത്തെ ബന്ധിപ്പിക്കുന്ന ഒരു ഹാൻഡ്‌ലർ ഫംഗ്‌ഷനിലേക്ക് ഫലപ്രദമായി പൊതിഞ്ഞിരിക്കുന്നു (കോഡിലെ ഇത് മൂലകത്തിൻ്റെ ഒരു റഫറൻസ് പ്രതിനിധീകരിക്കുന്നു):

        // മൂലകത്തിൻ്റെ ഐഡി പ്രോപ്പർട്ടിയുടെ മൂല്യം കൺസോളിലേക്ക് പ്രദർശിപ്പിക്കുന്നു

        നിങ്ങൾ ഒരു ഘടകത്തിൽ ക്ലിക്കുചെയ്യുമ്പോൾ, മൂലകത്തിൻ്റെ ആഗോള ആട്രിബ്യൂട്ടിൻ്റെ മൂല്യത്തെക്കുറിച്ചുള്ള വിവരങ്ങൾ കൺസോളിൽ പ്രദർശിപ്പിക്കും, കാരണം ആട്രിബ്യൂട്ട് മൂല്യത്തിലെ കോഡ് വിളിക്കുന്ന ഫംഗ്ഷനിലെ ഈ മൂല്യം സ്റ്റാൻഡേർഡ് നിയമങ്ങൾക്കനുസൃതമായി പ്രവർത്തിക്കുന്നു, ഈ സാഹചര്യത്തിൽ ഇവൻ്റ് ട്രിഗർ ചെയ്ത ഘടകത്തെ സൂചിപ്പിക്കുന്നു. ഇനിപ്പറയുന്ന ഉദാഹരണം നോക്കാം:

        //ഇത് ഇവൻ്റിനെ ട്രിഗർ ചെയ്ത ഘടകത്തെ സൂചിപ്പിക്കില്ല) ;

        myFunc() ഫംഗ്‌ഷനിലെ ഈ മൂല്യം ആഗോള വിൻഡോ ഒബ്‌ജക്‌റ്റിലേക്കുള്ള ഒരു റഫറൻസായിരിക്കുമെന്നോ സ്‌ട്രിക്‌റ്റ് മോഡ് വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ അത് നിർവചിക്കാത്തതാണെന്നോ ശ്രദ്ധിക്കുക. കർശനമായ മോഡ്).

        ആവശ്യമായ സന്ദർഭം കൈമാറുന്നതിന്, നിങ്ങൾക്ക് ഫംഗ്ഷൻ ഒബ്‌ജക്റ്റിൻ്റെ കോൾ () രീതി ഉപയോഗിക്കാം, ഇത് ഒബ്‌ജക്റ്റിൻ്റെ ഒരു രീതിയായി ഒരു ഫംഗ്‌ഷൻ വിളിക്കാൻ (എക്‌സിക്യൂട്ട് ചെയ്യാൻ) നിങ്ങളെ അനുവദിക്കുന്നു, അതിൻ്റെ എക്‌സിക്യൂഷൻ സന്ദർഭം (ഇത്) നിർദ്ദിഷ്ട മൂല്യത്തിലേക്ക് സജ്ജമാക്കുക, ആവശ്യമായ വാദങ്ങൾ പാസാക്കുമ്പോൾ:

        const myFunc = ഫംഗ്‌ഷൻ () ( കൺസോൾ .ലോഗ് (ഇത് .ഐഡി) // ഇത് ഇവൻ്റിനെ വെടിവച്ച ഘടകത്തെ സൂചിപ്പിക്കുന്നു ) ;

        ഈ സാഹചര്യത്തിൽ, ഇവൻ്റ് ട്രിഗർ ചെയ്യുമ്പോൾ, ഇവൻ്റ് പ്രവർത്തനക്ഷമമാക്കിയ ഘടകത്തിൻ്റെ ആഗോള ആട്രിബ്യൂട്ടിൻ്റെ മൂല്യം കൺസോളിലേക്ക് പ്രിൻ്റ് ചെയ്യും.

        ഒരു ക്ലിക്ക് ഇവൻ്റ് ചേർക്കുന്നതിന്. ഉപയോക്താവ് ID="ഡെമോ" എലമെൻ്റിൽ ക്ലിക്ക് ചെയ്യുമ്പോൾ ഔട്ട്‌പുട്ട് ഘടകം "ഹലോ വേൾഡ്" ആണ്:


        . Document.getElementById("ഡെമോ") innerHTML = "ഹലോ വേൾഡ്";
        });


        ശ്രമിക്കുക »നിർവചനവും ഉപയോഗവും

        തന്നിരിക്കുന്ന ഘടകത്തിനായി ഇവൻ്റ് ഹാൻഡ്‌ലർ ചേർക്കാൻ addEventListener() രീതി ഉപയോഗിക്കുന്നു.


        ഉദാഹരണങ്ങൾ

        ഒരു ഡോക്യുമെൻ്റിൽ നിങ്ങൾക്ക് ആവശ്യമുള്ളത്ര ഇവൻ്റുകൾ ചേർക്കാൻ കഴിയും; ഒരു ഇവൻ്റ് ചേർക്കുന്നത് നിലവിലുള്ള ഇവൻ്റിനെ തിരുത്തിയെഴുതില്ല.

        ഒരു ഘടകത്തിൽ രണ്ട് ക്ലിക്ക് ഇവൻ്റുകൾ എങ്ങനെ ചേർക്കാമെന്ന് ഈ ഉദാഹരണം കാണിക്കുന്നു:

        Document.getElementById("myBtn") addEventListener("ക്ലിക്ക്", MYFUNCTION);


        ശ്രമിക്കുക »
        ഉദാഹരണങ്ങൾ

        നിങ്ങൾക്ക് ഒരു ഘടകത്തിൽ വ്യത്യസ്ത തരത്തിലുള്ള ഇവൻ്റുകൾ ചേർക്കാൻ കഴിയും.

        ഘടകം ഉപയോഗിച്ച് ഒന്നിലധികം ഇവൻ്റുകൾ എങ്ങനെ ചേർക്കാമെന്ന് ഈ ഉദാഹരണം കാണിക്കുന്നു:

        Document.getElementById("myBtn") addEventListener("MouseOver", MYFUNCTION);
        . Document.getElementById("myBtn") addEventListener("click", someOtherFunction);
        . Document.getElementById("myBtn") addEventListener("MouseOut", someOtherFunction);


        ശ്രമിക്കുക »
        ഉദാഹരണങ്ങൾ

        ഒരു പാരാമീറ്റർ മൂല്യം കടന്നുപോകുമ്പോൾ, "അജ്ഞാത ഫംഗ്ഷൻ" പരാമീറ്ററുകളുള്ള ഒരു ഫംഗ്ഷൻ കോൾ ഉപയോഗിക്കുക:

        document.getElementById("myBtn"). addEventListener("ക്ലിക്ക്", ഫംഗ്‌ഷൻ()(
        tyPrinsHop(p1, p2);
        });


        ശ്രമിക്കുക »
        ഉദാഹരണങ്ങൾ

        ഇനങ്ങളുടെ റഫറൻസ് എഡിറ്റ് ചെയ്യുക:

        document.getElementById("myBtn"). addEventListener("ക്ലിക്ക്", ഫംഗ്‌ഷൻ()(
        this.style.backgroundColor = "red";
        });


        ശ്രമിക്കുക »
        ഉദാഹരണങ്ങൾ

        വ്യത്യസ്തമായവ പ്രദർശിപ്പിക്കാൻ വിപുലമായ ഓപ്ഷനുകൾ ഉപയോഗിക്കുക ക്യാപ്ചർ ഉപയോഗിക്കുകസീഥെസ് ആൻഡ് ക്യാപ്‌ചർ ഘട്ടങ്ങൾ:

        Document.getElementById("myDiv") addEventListener("click", tyRipsHop, true);

        ഒരു ഘടകത്തിലേക്ക് ഒരു ക്ലിക്ക് ഇവൻ്റ് അറ്റാച്ചുചെയ്യുക. ഉപയോക്താവ് ബട്ടണിൽ ക്ലിക്ക് ചെയ്യുമ്പോൾ, ഔട്ട്പുട്ട് "ഹലോ വേൾഡ്" ആണ്

        ഐഡി ഉള്ള ഘടകം = "ഡെമോ":


        document.getElementById("ഡെമോ").innerHTML = "ഹലോ വേൾഡ്";
        });

        സ്വയം പരീക്ഷിച്ചു നോക്കൂ"

        കൂടുതൽ "സ്വയം പരീക്ഷിക്കുക" ഉദാഹരണങ്ങൾ ചുവടെ.

        നിർവചനവും ഉപയോഗവും

        addEventListener() രീതി നിർദ്ദിഷ്ട ഘടകത്തിനായി ഒരു ഇവൻ്റ് ഹാൻഡ്‌ലർ അറ്റാച്ചുചെയ്യുന്നു.


        ഉദാഹരണം

        നിലവിലുള്ള ഇവൻ്റുകൾ പുനരാലേഖനം ചെയ്യാതെ തന്നെ നിങ്ങൾക്ക് ഒരു ഘടകത്തിലേക്ക് നിരവധി ഇവൻ്റുകൾ ചേർക്കാൻ കഴിയും.

        ഒരേ ഘടകത്തിൽ രണ്ട് ക്ലിക്ക് ഇവൻ്റുകൾ എങ്ങനെ ചേർക്കാമെന്ന് ഈ ഉദാഹരണം കാണിക്കുന്നു:

        Document.getElementById("myBtn").addEventListener("ക്ലിക്ക്", myFunction);

        സ്വയം പരീക്ഷിച്ചു നോക്കൂ"
        ഉദാഹരണം

        ഒരൊറ്റ ഘടകത്തിലേക്ക് നിങ്ങൾക്ക് വ്യത്യസ്ത തരത്തിലുള്ള ഇവൻ്റുകൾ ചേർക്കാൻ കഴിയും.

        ഒരേ ഘടകത്തിൽ നിരവധി ഇവൻ്റുകൾ എങ്ങനെ ചേർക്കാമെന്ന് ഈ ഉദാഹരണം കാണിക്കുന്നു:

        Document.getElementById("myBtn").addEventListener("mouseover", myFunction);
        document.getElementById("myBtn").addEventListener("click", someOtherFunction);
        document.getElementById("myBtn").addEventListener("mouseout", someOtherFunction);

        സ്വയം പരീക്ഷിച്ചു നോക്കൂ"
        ഉദാഹരണം

        പാരാമീറ്റർ മൂല്യങ്ങൾ കടന്നുപോകുമ്പോൾ, "അജ്ഞാത ഫംഗ്ഷൻ" ഉപയോഗിക്കുക, അത് പാരാമീറ്ററുകൾ ഉപയോഗിച്ച് നിർദ്ദിഷ്ട ഫംഗ്ഷനെ വിളിക്കുന്നു:

        Document.getElementById("myBtn").addEventListener("ക്ലിക്ക്", ഫംഗ്‌ഷൻ() (
        myFunction(p1, p2);
        });

        സ്വയം പരീക്ഷിച്ചു നോക്കൂ"
        ഉദാഹരണം

        ഒരു മൂലകത്തിൻ്റെ പശ്ചാത്തല നിറം മാറ്റുന്നു:

        Document.getElementById("myBtn").addEventListener("click", function())(
        this.style.backgroundColor = "red";