2

我只是试图从输入中获取文本,然后从那里打开一个带有新标签/窗口(或者)的 URL,该值包含在 URL 中。

例子

 <html>
 <head>
<title>Getting Started Extension's Popup</title>
<style>
  body {
    min-width: 357px;
    overflow-x: hidden;
  }
  img {
    margin: 5px;
    border: 2px solid black;
    vertical-align: middle;
    width: 75px;
    height: 75px;
  }
</style>
 </head>
  <body>
   <input type="text" name="enter" class="enter" value="9999" id="lolz"/>
   <input type="button" value="click" />  
  </body>
</html>

popup.js (Unsure about)


chrome.browserAction.onClicked.addListener(function(activeTab){
document.getElementById('lolz').value
var newURL = "https://stackoverflow.com/" + value;
chrome.tabs.create({ url: newURL });
});

所以最终结果是一个带有 URL“ https://stackoverflow.com/9999 ”的新窗口

目前我收到以下错误。

Refused to execute inline event handler because it violates the following Content Security Policy directive: "script-src 'self' chrome-extension-resource:".

这是在popup.html:30

4

1 回答 1

0

您的 html 中不能有内联脚本或函数调用(例如,您的输入按钮的 onclick)

将带有 src 的脚本添加到 head 部分

<head>
  ...
  <script src="popup.js"></script>
</head>

为您的按钮添加一个 id。

popup.js 应该如下所示:

document.addEventListener('DOMContentLoaded', function () {
    document.querySelector('input#yourButtonID').addEventListener('click', popup);
});
function popup()
{
    var newURL = "http://stackoverflow.com/" + document.getElementById("lolz").value;
    chrome.tabs.create({ url: newURL });
}

将 yourButtonID 更改为实际 id。

于 2013-07-15T23:55:38.593 回答