HTML DOM addEventListener() ਮੱਥੋਡ
- 上一页 accessKey
- 下一页 appendChild()
- 返回上一层 HTML DOM Elements ਆਬਜੈਕਟ
تعریف اور استعمال
addEventListener()
میتاویس کا ایکٹنٹ ہینڈلر ایلگا رہا ہے.
ਉਦਾਹਰਣ
ਉਦਾਹਰਣ 1
ਬਟਨ ਐਲੀਮੈਂਟ ਵਿੱਚ click ਈਵੈਂਟ ਜੋੜੋ:
element.addEventListener("click", myFunction); function myFunction() { document.getElementById("demo").innerHTML = "Hello World"; }
ਉਦਾਹਰਣ 2
ਹੋਰ ਸਥਿਰ ਕੋਡ:
element.addEventListener("click", function() { document.getElementById("demo").innerHTML = "Hello World"; });
ਇੱਥੇ ਹੋਰ ਉਦਾਹਰਣ ਮਿਲ ਸਕਦੇ ਹਨ。
ਸਿਧਾਂਤ
element.addEventListener(type, ਫੰਕਸ਼ਨ, useCapture)
ਪੈਰਾਮੀਟਰ
ਪੈਰਾਮੀਟਰ | ਵਰਣਨ |
---|---|
type |
ਲਾਜ਼ਮੀ। ਈਵੈਂਟ ਦਾ ਨਾਮ ਕਿਰਦ "on" ਪ੍ਰੋਫਾਈਲ ਨਹੀਂ ਕਰੋ ਕਿਰਦ "click" ਵਰਗੇ ਉਪਯੋਗ ਕਰੋ ਨਹੀਂ, "onclick" |
ਫੰਕਸ਼ਨ | ਲਾਜ਼ਮੀ। ਈਵੈਂਟ ਹੰਡਲਿੰਗ ਲਈ ਚਲਾਇਆ ਜਾਣ ਵਾਲਾ ਫੰਕਸ਼ਨ |
useCapture |
ਚੋਣਵਾਂ (ਮੂਲ ਤੋਂ ਪੂਰਾ = ਸੱਚ)
|
ਵਾਪਸ ਦਿੱਤਾ ਗਿਆ ਹੈ
ਨਹੀਂ ਹੈ。
ਤਕਨੀਕੀ ਵੇਰਵੇ
ਇਹ ਮੇਥਡ ਨਿਰਦਿਸ਼ਟ ਈਵੈਂਟ ਲਿਸਨਰ ਫੰਕਸ਼ਨ ਨੂੰ ਮੌਜੂਦਾ ਨੋਡ ਦੇ ਲਿਸਨਰ ਸੈਕਟਿਓਨ ਵਿੱਚ ਜੋੜ ਦਿੰਦਾ ਹੈ ਤਾਂ ਕਿ ਉਹ ਨਿਰਦਿਸ਼ਟ ਈਵੈਂਟ ਦੇ ਹੰਡਲਿੰਗ ਲਈ ਚਲਾਇਆ ਜਾ ਸਕੇ。 type ਈਵੈਂਟ ਦੇ ਸਮੇਂ useCapture ਮੂਲ ਤੋਂ ਪੂਰਾ ਹੈ, ਤਾਂ ਲਿਸਨਰ ਪਕਸ਼ੀ ਈਵੈਂਟ ਲਿਸਨਰ ਦੇ ਰੂਪ ਵਿੱਚ ਰਜਿਸਟਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਜੇਕਰ useCapture ਮੂਲ ਤੋਂ ਪੂਰਾ ਹੈ, ਉਹ ਆਮ ਈਵੈਂਟ ਲਿਸਨਰ ਦੇ ਰੂਪ ਵਿੱਚ ਰਜਿਸਟਰ ਕੀਤਾ ਗਿਆ ਹੈ。
addEventListener() ਕਈ ਵਾਰ ਬੱਚਾ ਹੋ ਸਕਦਾ ਹੈ, ਇੱਕ ਹੀ ਨੋਡ ਉੱਤੇ ਇੱਕ ਹੀ ਤਰ੍ਹਾਂ ਦੇ ਈਵੈਂਟ ਲਿਸਨਰ ਰਜਿਸਟਰ ਕਰਨ ਲਈ ਅਤੇ ਲੰਬੇ ਨਹੀਂ ਹੋਣੇ ਚਾਹੀਦੇ, DOM ਕਈ ਈਵੈਂਟ ਲਿਸਨਰਸ ਦੀ ਬੱਚਾ ਕਿਉਂਕਿ ਬੱਚਾ ਕਰਨ ਦੀ ਕਿਸਮ ਨਹੀਂ ਪਤਾ ਕਰ ਸਕਦਾ ਹੈ。
ਜੇਕਰ ਇੱਕ ਈਵੈਂਟ ਲਿਸਨਰ ਫੰਕਸ਼ਨ ਇੱਕ ਹੀ ਨੋਡ ਉੱਤੇ ਇੱਕ ਹੀ ਤਰ੍ਹਾਂ ਦੇ ਸਮਾਨ ਵਰਗ ਵਿੱਚ ਰਜਿਸਟਰ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ type ਅਤੇ useCapture ਪੈਰਾਮੀਟਰ ਦੋ ਵਾਰ ਰਜਿਸਟਰ ਕੀਤੇ ਗਏ ਹਨ, ਤਾਂ ਦੂਜੀ ਵਾਰ ਰਜਿਸਟਰ ਕੀਤਾ ਗਿਆ ਹੋਵੇਗਾ ਅਣਮਾਨਯੋਗ। ਜਦੋਂ ਇੱਕ ਨੋਡ ਉੱਤੇ ਈਵੈਂਟ ਦੇ ਸਮੇਂ ਇਸ ਨੋਡ ਉੱਤੇ ਨਵਾਂ ਈਵੈਂਟ ਲਿਸਨਰ ਰਜਿਸਟਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਉਸ ਈਵੈਂਟ ਲਈ ਨਵੇਂ ਈਵੈਂਟ ਲਿਸਨਰ ਨੂੰ ਕਿਰਦ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ。
ਜਦੋਂ Node.cloneNode() ਮੇਥਡ ਜਾਂ Document.importNode() ਜਦੋਂ Document ਨੋਡ ਨੂੰ ਕਾਪੀ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਮੂਲ ਨੋਡ ਉੱਤੇ ਰਜਿਸਟਰ ਕੀਤੇ ਗਏ ਈਵੈਂਟ ਲਿਸਨਰਸ ਨੂੰ ਕਾਪੀ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ。
ਇਹ ਵੀ ਮੇਥਡ ਡਾਕੂਮੈਂਟ ਅਤੇ ਵਿੰਡੋ ਇਹ ਵੀ ਅਧਿਐਨ ਕੀਤੇ ਗਏ ਹਨ ਅਤੇ ਉਹ ਇੱਕ ਜਿਹੇ ਤਰੀਕੇ ਨਾਲ ਕੰਮ ਕਰਦੇ ਹਨ。
ਹੋਰ ਉਦਾਹਰਣ
ਉਦਾਹਰਣ 3
ਤੁਸੀਂ ਇੱਕ ਹੀ ਐਲੀਮੈਂਟ ਵਿੱਚ ਕਈ ਈਵੈਂਟਸ ਜੋੜ ਸਕਦੇ ਹੋ:
element.addEventListener("click", myFunction1); element.addEventListener("click", myFunction2);
ਉਦਾਹਰਣ 4
ਤੁਸੀਂ ਇੱਕ ਹੀ ਐਲੀਮੈਂਟ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਈਵੈਂਟਸ ਜੋੜ ਸਕਦੇ ਹੋ:
element.addEventListener("mouseover", myFunction); element.addEventListener("click", someOtherFunction); element.addEventListener("mouseout", someOtherFunction);
例子 5
如需传递参数值,请使用“匿名函数”:
element.addEventListener("click", function() { myFunction(p1, p2); });
例子 6
更改
element.addEventListener("click", function() { this.style.backgroundColor = "red"; });
例子 7
冒泡和捕获的区别:
element1.addEventListener("click", myFunction, false); element2.addEventListener("click", myFunction, true);
例子 8
删除事件处理程序:
element.addEventListener("mousemove", myFunction); element.removeEventListener("mousemove", myFunction);
浏览器支持
element.addEventListener()
是 DOM Level 2 (2001) 功能。
所有浏览器都完全支持它:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
支持 | 9-11 | 支持 | 支持 | 支持 | 支持 |
相关页面
元素方法:
文档方法:
教程:
- 上一页 accessKey
- 下一页 appendChild()
- 返回上一层 HTML DOM Elements ਆਬਜੈਕਟ