4

因此,我正在尝试使用 Google Chrome 扩展程序。

我已经完成了 50% 的脚本,但我停在了一步:

如何在 popup.html 加载外部网站 - 例如:www.mysite.com/page.php?

我只在使用 iFrame 时取得了成功,但是,它丑陋且不安全...... :(

有没有办法用jquery(ajax)来做到这一点?

提前致谢。


所以,这就是我的 manifest.json 的样子:

{
  "manifest_version": 2,

  "name": "XCLickF",
  "description": "X file",
  "version": "1.0",
  "background": { "scripts": ["jquery-1.9.1.min.js","background.js"] },

  "permissions": [
        "http://*/*",
        "https://*/*"
    ],
  "browser_action": {
    "default_icon": "icon.png",
"default_title": "XMail",
    "default_popup": "popup.html"
  }
}

我的 background.js 是怎样的:

function poll() {
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = handleStateChange; // Implemented elsewhere.
    xhr.open("GET", 'http://disqus.com/', false);
    xhr.send(null);
    console.log(xhr.responseText);
}

function handleStateChange() {
    if (this.readyState == 4) {
        var resp = JSON.parse(this.responseText);
        updateUi(resp);
    }
}

function updateUi(json) {
    console.log("JSON: ", json);
}
4

1 回答 1

0

实际上,您可以使用 jquery ajax(或 xhr)获取该页面的所有 html。获取 html 后,必须设置样式/执行 js'。你也可以重定向到你的网页(但大多数情况下它会被谷歌商店禁止)你不能在不使用 iframe 的情况下显示页面。

$.ajax({
  url: 'www.google.com',
  success: function(data) {
    console.log(data); // data gives all of html
  }
});

您还可以跨域免费的 iframe 插件,这可能有助于您的工作。

iframe 高度 Jquery 插件

iframe 调整器

于 2014-06-21T23:57:30.243 回答