オープンURLへのリンクであるChrome拡張機能を初めて作成します。 1つはJavaScriptを介してサイトを開き、もう1つはハードコードされたリンクです。どちらもうまくいきません。私がここで間違っていることを確信していない。Chrome拡張機能でURLを開く
manifest.jsonを
{
"manifest_version": 2,
"web_accessible_resources": [
"popup.html", "popup.js"
],
"name": "Open URL",
"description": "Opens a URL.",
"version": "1.0.0",
"permissions": ["tabs"],
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title": "Open a URL"
}
}
popup.html
<!DOCTYPE html>
<html>
<head>
<title>Open URL</title>
<script src="popup.js"></script>
</head>
<body style="width: 100px;">
<p>Open URL</p>
<p><a href="javascript:OpenURL('http://www.google.com')">Google</a></p>
<p><a href="http://www.stackoverflow.com">Stack Overflow</a></p>
</body>
</html>
popup.js
function OpenURL(location) {
chrome.tabs.create({ url: location });
}
インラインjsはクロム拡張ページでは機能しません。参照:[OnClickイベントはクロム拡張では機能しません](// stackoverflow.com/a/29735177) – wOxxOm
注:この質問には実際には2つの問題があります:A)ポップアップのHTMLでのインラインJavaScriptの使用、およびB) 'target =" _ blank "'なしで非拡張URLへのリンクの使用。 A)[Chrome拡張機能のポップアップが機能しない、クリックイベントが処理されない](https://stackoverflow.com/q/17601615)など、多数の重複した質問があります。問題B、私は重複が見つかりませんでした。スタックオーバーフローの質問は、1つの質問につき1つの質問になっています。これがちょうどAならば、これを複製としてクローズすることができました。それがちょうどBだったら、 – Makyen
の質問は重複してターゲットとして使用され、問題について再度尋ねられるべきです。残念ながら、両方の問題を1つの質問で扱うと、誰かが両方の問題について質問していない限り、これを重複したターゲットとして混乱させることになります。別の時間に、1つの質問につき1つだけ質問してください。部分的に無効になる回答がない場合は、質問を '_blank'問題だけに編集することをお勧めしますが、そうすることで回答が無効になることは不適切です。 – Makyen