将事件附加到JQuery调用内的窗口或文档对象后退功能不起作用

gas*_*nbs 2 jquery events document window

我有一个附带标签的脚本,使用JQuery下载一些文件内容:

$.get('the_file', function(data){

}
Run Code Online (Sandbox Code Playgroud)

我需要内容来修改Web布局.

如果我尝试使用onload事件中的内容:

window.addEventListener('load', useTheContents, false);
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为内容尚未准备好.

所以我在$ .get(){}回调函数的末尾发送一个事件,如下所示:

$.get('the_file', function (data) {
    var e = jQuery.Event("MyCustomEvent");
    jQuery("body").trigger(e);
}
Run Code Online (Sandbox Code Playgroud)

然后我在主脚本中有这个:

$( "body" ).on( "MyCustomEvent", modifyLayout);

function modifyLayout(){

  // The stuff

}
Run Code Online (Sandbox Code Playgroud)

它工作正常.

但是,如果我使用"窗口"或"文档"而不是"正文"它不起作用.

我想知道为什么.

Raj*_*esh 8

But if I use "window" or "document" instead of "body" it does not work.
Run Code Online (Sandbox Code Playgroud)

希望您不要将窗口/文档放在引号内.身体应该在引号内.参考下文:

$("body") -> valid
$(window) -> valid
$(document) -> valid
$("window") -> Invalid
$("document") -> Invalid
Run Code Online (Sandbox Code Playgroud)