在Firefox中访问全局事件对象
目标:在.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事件,我的检查将不再起作用。
问题:如何在此函数中访问全局事件对象?
您可以将事件Object存储在可以在其他函数中使用的任何变量中。
这是演示: http : //jsfiddle.net/cVDbp/