在Firefox中访问全局事件对象

时间:2012-03-27 09:31:21

标签: javascript jquery firefox javascript-events

目标:.ajaxStart()上运行某些功能,但仅限于某个事件触发。

代码:

$('#loading_indicator').ajaxStart(function() {
    if(event != null){
            if(event.type == 'hashchange' || event.type == 'DOMContentLoaded'){
                $(this).show();
                $('#acontents').hide();
                $(this).ajaxComplete(function() {
                    $(this).hide();
                    $('#acontents').show();
                    bindClickOnTable();
                    initFilterInput();
                });
            }
    }
});

问题:这在Firefox中不起作用。在Internet Explorer和Chrome中,我可以愉快地访问事件对象,而无需将其传递给.ajaxStart(function()。但是,在Firefox中,事件对象为undefined

明显但不正确的解决方案:event对象传递给该函数。这将无效,因为它将传递ajaxStart事件,我的检查将不再起作用。

问题:如何在此功能中访问全局事件对象?

1 个答案:

答案 0 :(得分:2)

您可以将事件对象存储在可以在其他函数中使用的任何变量中。

以下是演示:http://jsfiddle.net/cVDbp/