3

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

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

}

我需要内容来修改网页布局。

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

window.addEventListener('load', useTheContents, false);

它不起作用,因为内容还没有准备好。

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

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

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

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

function modifyLayout(){

  // The stuff

}

它工作正常。

但是如果我使用“window”或“document”而不是“body”,它就不起作用。

我想知道为什么。

4

1 回答 1

10
But if I use "window" or "document" instead of "body" it does not work.

希望您不要将窗口/文档放在引号内。正文应该在引号内。参考以下:

$("body") -> valid
$(window) -> valid
$(document) -> valid
$("window") -> Invalid
$("document") -> Invalid
于 2013-10-01T14:05:17.837 回答