Tengeneza wa Kusoma Matukio ya JavaScript HTML DOM
addEventListener() method
实例
Ongeza kikosi cha tukio cha kufikia kwa kichukua bili:
document.getElementById("myBtn").addEventListener("click", displayDate);
addEventListener()
Method ya kuingiza vifaa vya kufanya kazi kwa kipimo chake kwa kipimo chake kwanza.
addEventListener()
Method ya kuingiza vifaa vya kufanya kazi kwa kipimo chake bila kufuata vifaa vingine vya kufanya kazi vya zamani.
Inaweza kuongeza vifaa vingine vya kufanya kazi kwa kipimo chake.
您能够向一个元素添加多个相同类型的事件处理程序,例如两个 "click" 事件。
您能够向任何 DOM 对象添加事件处理程序而非仅仅 HTML 元素,例如 window 对象。
addEventListener()
方法使我们更容易控制事件如何对冒泡作出反应。
Kwa kusimama kwa addEventListener()
Mawakili wakati wa kutumia, JavaScript na HTML ya kipengele kinachotenganishwa, kwa sababu inaonesha kuelewa zaidi; inafaa kuingiza mtunzi wa kufikia kwa kipengele bila kusimama kwa HTML ya kipengele.
Inaweza kutumia removeEventListener()
Inafaa kumaliza mtunzi wa kufikia kwa kwa kujua kufikia kwa kujua.
Mawakili
element.addEventListener(event, function, useCapture);
Para ya kwanza ni aina ya matukio (kama "click" au "mousedown").
Para ya pili ni funguza inayotumika kwa kila hatua ya matukio.
Para nyingine ni thamani ya Boole, inaeleza kama tunataka kutumia uharibifu wa matukio kwa kuzingatia au kutaka kumaliza kwa kuzingatia. Kiparama hiki ni inayotambuliwa.
Tafadhali:Hatarini kuitumia neno la kuzingatia "on" kwa matukio; tumia "click" ikisitambua "onclick".
Kuingiza mtunzi wa kufikia kwa kipengele
实例
Kutangaza "Hello World!" kwa kila mtu anafikia kipengele:
element.addEventListener("click", function(){ alert("Hello World!"); });
Inaweza kutumia funguza nje ya "mingwa":
实例
Kutangaza "Hello World!" kwa kila mtu anafikia kipengele:
element.addEventListener("click", myFunction); function myFunction() { alert ("Hello World!"); }
Kuingiza mtunzi wa kufikia kwa kipengele huo kwa matukio mbalimbali
addEventListener()
Inafaa kuingiza mtunzi wa kufikia kwa kipengele huo kwa matukio mbalimbali, bila kumchuka matukio ya awali:
实例
element.addEventListener("click", myFunction); element.addEventListener("click", mySecondFunction);
Inaweza kuingiza mtunzi wa kufikia kwa kipengele huo kwa aina mbalimbali za matukio:
实例
element.addEventListener("mouseover", myFunction); element.addEventListener("click", mySecondFunction); element.addEventListener("mouseout", myThirdFunction);
Kuingiza mtunzi wa kufikia kwa Kipengele cha Window
addEventListener()
Inafaa kuingiza mtunzi wa kufikia kwa kila kipengele cha HTML DOM, kama kipengele cha HTML, kipengele cha HTML au ufukia kwa kila kipengele kinachosimama kwa matukio, kama kipengele cha xmlHttpRequest.
实例
Kuingiza mtunzi wa kufikia kubadilika ukubwa wa ufukia:
window.addEventListener("resize", function(){ document.getElementById("demo").innerHTML = sometext; });
Thamani
Kama una kushikilia thamani, tumia chaji cha thamani kuwa na maelezo wa kufanyika kwa maelezo wa kufanyika wa kifaa:
实例
element.addEventListener("click", function(){ myFunction(p1, p2); });
Kushambulia ya matukio ni kushambulia ama kufaisha?
Kwenye HTML DOM, kuna hatua mbili za kushambulia ya matukio: kushambulia na kufaisha.
Kushambulia ya matukio ni hatua ya kufafanua ukweli wa eneo la kina wakati ya kifo cha matukio. Kama <div> ina <p>, na mtu anapita kufanya click kwa elementi ya <p>, ambaye ena kufanyika kwanza kwa hatua ya click ya elementi gani?
Kwenye kushambulia, eneo la kina linaweza kufanyika kwanza, na kisha eneo la kina: Kwanza kufanyika kwa matukio ya click ya elementi ya <p>, kisha ya elementi ya <div>.
Kwenye kufaisha, eneo la kina la kina linaweza kufanyika kwanza, na kisha eneo la kina: Kwanza kufanyika kwa matukio ya click ya elementi ya <div>, kisha ya elementi ya <p>.
Kwenye method ya addEventListener(), inaweza kutumia chaji cha "useCapture" kuweka hatua ya kushambulia:
addEventListener(event, function, useCapture);
Chaguo cha kuzingatia ni false
inaendelea kwa sababu ya kushambulia kwenye true
inakusababisha uharibifu wa matukio kutoka kwenye
实例
document.getElementById("myP").addEventListener("click", myFunction(), true); document.getElementById("myDiv").addEventListener("click", myFunction(), true);
removeEventListener() method
removeEventListener()
Mwendo huyo atakata kwa sababu ya addEventListener()
Mfano wa programu ya matukio ya kifaa:
实例
element.removeEventListener("mousemove", myFunction());
Mawasiliano ya kibarabara
Inanwa za tabia inasema vesion vya kibarabara kwa kuzikubali kufanya hizi mitambo.
Mwendo | |||||
addEventListener() | 1.0 | 9.0 | 1.0 | 1.0 | 7.0 |
removeEventListener() | 1.0 | 9.0 | 1.0 | 1.0 | 7.0 |
Tahidi:IE 8, Opera 6.0 na vesion vya awali hawakubali addEventListener()
na removeEventListener()
Mwendo. Kama, kwa vesion vya kibarabara kama hizo, inaweza kutumia attachEvent()
方法向元素添加事件处理程序,并由 detachEvent()
方法删除:
element.attachEvent(event, function); element.detachEvent(event, function);
实例
跨浏览器解决方案:
var x = document.getElementById("myBtn"); if (x.addEventListener) { // 针对主流浏览器,除了 IE 8 及更正版本 x.addEventListener("click", myFunction); } else if (x.attachEvent) { // 针对 IE 8 及更早版本 x.attachEvent("onclick", myFunction); }
HTML DOM Event 对象参考手册
如需所有 HTML DOM 事件的列表,请访问我们完整的 HTML DOM Event 对象参考手册。