Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jQuery加载在div中需要javascript的页面_Javascript_Jquery - Fatal编程技术网

使用jQuery加载在div中需要javascript的页面

使用jQuery加载在div中需要javascript的页面,javascript,jquery,Javascript,Jquery,我创建了一个简单的函数,将浮动可调整大小的内容附加到页面: function CreateFloatingWindow(id) { var win = document.createElement('div'); $(win).attr('id', id); $(win).height(100).width(300).css('background-color', 'red'); $(win).resizable().draggab

我创建了一个简单的函数,将浮动可调整大小的内容附加到页面:

function CreateFloatingWindow(id) {
        var win = document.createElement('div');
        $(win).attr('id', id);
        $(win).height(100).width(300).css('background-color', 'red');
        $(win).resizable().draggable();
        $(win).appendTo($('body'));
        $(win).load('http://www.fantasy-mmorpg.com/fowiki/#1419~2');
}

CreateFloatingWindow('first');
代码可以正常工作,除非加载的页面中有某种javascript,在这种情况下,结果是一条“请激活javascript”消息

我认为消息是由目标页面本身处理的,但我无法访问其源

有没有办法让目标页面理解我启用了javascript,即使它是通过jQuery加载到div中的


注意:上面的代码要求jQuery和jQuery UI正常运行。

我一直在深入研究,并注意以下几点:

首先,草案中的这一条款可能会说明:

脚本执行

使用不带后缀选择器的URL调用
.load()
时 表达式,则在创建脚本之前将内容传递到
.html()
远离的。这将在脚本块被丢弃之前执行它们。如果 调用
.load()
,并将选择器表达式附加到URL, 但是,在更新DOM之前,脚本会被剥离, 因此不会执行和。两种情况的示例如下所示:

在这里,作为文档的一部分加载到#a中的任何JavaScript都将 成功执行

1
$('a').load('article.html')

但是,在以下情况下,脚本 加载到#b中的文档中的块被剥离,而不是 执行:

1
$('b').load('article.html#target')


针对不同的浏览器检查消息“请激活JavaScript”,我不确定这是在脚本级别还是浏览器级别。但我很确定“Please Enabled JavaScript”可能是-如果它根本不执行任何JavaScript的话。

这说明了一点,但即使删除选择器也会给我同样的信息:/显然,我可以“看到”页面的源代码,但由于它包含缩小的JavaScript,我无法访问普通的源代码,理解逻辑并最终使用我需要的部件。至于这个消息,Firefox给了我同样的消息,我还没有在IE上尝试过,因为我现在不知道运行用户脚本的方法,我会进一步研究这个问题。很抱歉做出这样的假设,但我想,同一个页面可能会有其他小型脚本,这些脚本对JavaScript/其他脚本等进行依赖性检查。我想在不知道要查看的页面的情况下,从这里开始,这有点困难-从我对包含
.load()
中的JavaScript文件的测试中,它们确实成功运行。我将编辑我的答案以删除该指控=)我一点也不觉得是指控=D无论如何,如果你想帮我做一些测试,我获取了这个页面:我非常确定检查是用javascript完成的,但我找不到绕过它的方法。。。我担心它可能会使用一些浏览器功能检测来显示消息,而不是简单的noscript tagAha。。如果您在页面加载之前查看DOM,几乎立刻就明白了原因,它在
中说(“请激活Javascript”),这意味着数据是从他们自己的Ajax查询加载的,然后在检索数据后附加到myContent Div。您的代码运行100%良好,因为它正确地获取了页面加载中的DOM,而不是从数据库中检索所有数据。是的。。。你说得对!现在,我只需要理解我是想走简单的路(使用iframe)还是艰难的路(尝试模拟YR db请求)。非常感谢。