【问题标题】:Google Chrome Extension Redirect different page谷歌浏览器扩展重定向不同的页面
【发布时间】:2013-07-23 15:45:33
【问题描述】:

我有 popup.html 我想在用户单击 href 时在扩展中加载不同的 html 页面。示例用户将输入用户名和密码,如果正确,则 login.html 重定向到内容。

试过这个:

window.onload=function(){
$( '#Login' ).click(function() { 
    alert('test');  
        chrome.browserAction.setPopup({
            popup:"login.html"
            });
        
});
}

登录是一个按钮。但是 login.html 没有出现。警报正在起作用。

【问题讨论】:

  • 您已经尝试过哪些方法?用户“点击href”在哪里?在弹窗、页面、扩展页面,...?
  • 如@Rob 要求,请提供更多细节!
  • 如果 JavaScript 在弹出窗口的上下文中运行,请使用 location.href = 'login.html';

标签: javascript google-chrome google-chrome-extension google-chrome-app


【解决方案1】:

要更改弹出的 html 页面,您可以使用

chrome.browserAction.setPopup

更多详情在此页面http://developer.chrome.com/extensions/browserAction.html

你可以这样做:

在 html 中:

<a onclick="changePopup();" href="#"> change popup</a>

在js中:

function changePopup(){
    chrome.browserAction.setPopup({
       popup:"second_page.html"
    });
}

你没有指定链接放在哪里?在弹出页面或html页面中,所以我假设链接放在弹出html页面中。

如果链接放在扩展之外,你应该使用内容脚本https://developer.chrome.com/extensions/content_scripts.html

更新:您应该根据需要使用背景页面或事件页面将 java-script 文件放在 manifest.json 中。

在这里您可以找到更多信息:

https://developer.chrome.com/extensions/background_pages.html

http://developer.chrome.com/extensions/event_pages.html

....
  "background": {
    "scripts": ["background.js"]
  },
....

如果你使用&lt;script&gt;标签从你的html页面加载了javscript文件,你应该使用消息传递api:http://developer.chrome.com/extensions/messaging.html与你的html交互。

【讨论】:

  • 您的代码不包含任何可以解决 OP 问题的新奇事物。此外,由于CSP,它不会起作用。
【解决方案2】:

试试这个

&lt;a href="another-page.html"&gt;&lt;button id="add-button"&gt;Go to another popup&lt;/button&gt;&lt;/a&gt;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多