我只是無法理解window.event()
在JavaScript中的作用。它沒有任何定義。 document.event()
同樣的事情。我也不明白這兩者之間的區別。他們是否接受任何論點?什麼是JavaScript中的window.event?
回答
事件發生時會調用事件,所以例如click和keypress是事件。
然而window.event()
的原因是爲了跨瀏覽器的兼容性。因此,這裏是一些javascript:
object.onclick = function(e) {
// e holds all of the properties of the event
// You can access the event properties like so e.target
}
的Internet Explorer但是,不處理JavaScript的方式其他瀏覽器做。因此,對於Internet Explorer來處理相同的代碼上面我們會寫一些關於
object.onclick = function() {
alert(window.event.srcElement); // Same as e.target
}
行或者你可以把它們都在一起,像這樣結合:
object.onclick = function(e) {
e = e || window.event; // Use e if it exists or e will be equal to window.event
var target = e.target || e.srcElement; // We then use the e.target property but if that doesn't exist we use e.srcElement
alert(target);
}
*「然而對於window.event()的原因是爲了跨瀏覽器兼容」* Uhm no。 IE瀏覽器簡單地做了不同於其他瀏覽器,這就是爲什麼我們擁有它。另外請注意,OP正在討論'window.event()',而不是'window.event'。 –
HTML 4增加了讓事件在瀏覽器中觸發動作的功能,例如當用戶單擊某個元素時啓動JavaScript。
Here您可以檢查事件列表可能有用
我不知道是否window.event現在使用的天。這似乎是一個非常通用的。相反,你可以使用更多的細節窗口的事件,如onerror
,onload
,onresize
,onstorage
等
使用它們,一定要檢查瀏覽器兼容性之前。
謝謝。
您可以處理使用事件:
htmlElementObj.onclick = function(e) {
//e->event object
};
但是,Internet Explorer不會將事件對象傳遞給處理程序。相反,您可以使用在事件被觸發後立即更新的window.event對象。
htmlElementObj.onclick = function(e) {
e = e || window.event;
}
「非正式」window.event不是「window」的「方法」,因此不用括號和/或參數調用。相反,它是用於定位當前活動事件對象的Window的Microsoft IE瀏覽器唯一非正式全局瀏覽器「屬性」(由於瀏覽器是單線程,因此一次只能激活一個事件)。有關事件對象可能提供的更多信息,請參閱http://www.w3schools.com/jsref/dom_obj_event.asp
因爲IE9 +和其他瀏覽器將事件對象作爲第一個參數傳遞給已註冊的事件處理函數,所以Window.event僅在IE9之前需要。一個標準的瀏覽器處理函數「onclick(e)」可以通過使用傳入的本地參數「e」(或者任何處理作者命名它)來訪問關於當前事件的信息,而在IE9之前,處理程序的參數「e」是undefined需要處理程序來訪問window.event。在實踐中,這意味着在處理事件時,「舊IE」寬容代碼檢查傳入的「事件」,如果找不到,則查找window.event:function handler(e){var e = e?e :窗口。事件;}
爲了儘可能地提供幫助,據我所知(可以找到),window.event作爲IE的一部分非正式接受,但document.event不是,因此只能通過甚至比非正式的IE容忍度還要低(如果它有效的話,更可能根據IE版本而變化)。
- 1. 這是什麼意思...「var evt = event || window.event;」
- 2. javascript window.event未來?
- 3. window.Event vs window.event
- 4. 用Javascript window.confirm停止window.event?
- 5. 什麼是JavaScript中
- 6. JavaScript中的{... code ...}是什麼?
- 7. 什麼是JavaScript中的+ =?
- 8. JavaScript中的BarProp是什麼?
- 9. 什麼是JavaScript的
- 10. 什麼是JavaScript的
- 11. 什麼是string.indexOf(「*。」)在Javascript中做什麼?
- 12. 什麼是javascript:;?
- 13. 什麼是!==在JavaScript中?
- 14. 是什麼在JavaScript
- 15. 什麼是在JavaScript
- 16. 是什麼以JavaScript
- 17. 是什麼在Javascript
- 18. 什麼是href = javascript :;
- 19. JavaScript:什麼是addEventListener?
- 20. 什麼是javascript prototype.constructor?
- 21. 什麼是!在JavaScript?
- 22. 什麼是JavaScript庫?
- 23. 什麼是Javascript的「要求」?
- 24. 轉義正是在javascript中是什麼
- 25. 這是什麼的javascript jQuery中
- 26. 什麼是JavaScript中的「防衛參考」?
- 27. 什麼是Javascript/ECMA中的snarf?
- 28. 「===」在JavaScript/Jquery中暗含的是什麼?
- 29. JavaScript中的DOM和BOM是什麼?
- 30. JavaScript中的`1..something`是什麼意思?
這些都不存在,除了一些舊的IE版本。 – SLaks
https://developer.mozilla.org/en-US/docs/Web/API/Window – wiretext