是否有可能加载外部网页,例如 'http://www.google.com',然后在其末尾添加自己的HTML/JS代码(例如运行函数)?肯定有一种方法可以加载外部页面,然后在其后添加自己的代码。就像这样:
<html>
<script>
document.location.href="http://www.google.com/"; //Load external page
function myscript() {
...blahblah
}
</script>
<button onclick="myscript();">Click me</button>
</html>
我希望那个按钮出现在外部页面底部。请不要建议使用php解析方法。我已经尝试通过首先在php中解析页面,然后将自己的脚本附加到其中并按照我在这里描述的方式echo出来: Append HTML to page after redirect 对于简单的页面,它可以工作,没有重定向或者最终的外部页面可以被适当地解析。问题是我无法正确解析外部页面。解析的代码似乎没有从之前的页面(在重定向之前)中获取的代码功能。我需要在不解析/爬取/抓取的情况下完成此操作。
谢谢!
编辑:我已经尝试按Amadan所建议的在iframe中显示外部页面:
<script>
function myscript() {
...blahblah
}
</script>
<iframe src="http://www.google.com/"></iframe>
<button onclick="myscript();">Click me</button>
</html>
然而,在Firefox中它只显示一个空白框,在IE中它会显示:"无法在框架中显示此内容:为了保护您输入到该网站的信息的安全性,此内容的发布者不允许其在框架中显示。"
有什么办法可以绕过这个问题吗?
编辑2:
我已经包含了jquery和跨域脚本(https://github.com/padolsey/jquery.fn/blob/master/cross-domain-ajax/jquery.xdomainajax.js)。这是我现在使用的代码来使用ajax获取内容。我该如何将其展示在网页上?很抱歉,我真的不太懂ajax/jquery!
function test () {
$.ajax({
url: 'http://www.google.com/',
type: 'GET',
success: function(res) {
var content = $(res.responseText).text();
alert(content);
}
});
}