Chrome扩展导航到URL

Chrome extension navigate to URL

本文关键字:URL 导航 扩展 Chrome      更新时间:2023-09-26

我试图使一个Chrome扩展,其中我已经有几个锚的HTML文件,我试图使Chrome打开一个新的选项卡与URL点击时。

为此,我在manifest.json

中有"permissions": ["tabs"]
chrome.browserAction.onClicked.addListener(function(tab) {
  chrome.tabs.create({'url': event.target.href})
})

在我的JS文件;但这是行不通的。我还能错过什么呢?

问候,

我通常是这样做的(例如:点击pop .html中的链接)

popup.html

<a href="http://whereever.you.go.com/whatever.html" class="clickme">Click</a>

popup.js

$('.clickme').click(function() {
   chrome.tabs.create({url: $(this).attr('href')});
});

或香草Javascript(类clickme的每个元素都是锚)

window.addEventListener('load', function() {
   var theAnchors = document.getElementsByClassName('clickme');
   for(i=0, len=theAnchors.length; i<len; i++) {
      theAnchors[i].addEventListener('click', function() {
         chrome.tabs.create({url: this.href});
      }, false);
   }
}, false);

我终于做到了。

我需要的代码是:
document.addEventListener('DOMContentLoaded', function() {
  window.addEventListener('click', function(e) {
    chrome.tabs.create({'url': event.target.href});
  });
});

非常感谢那些试图帮助的人:)

问候,k .

使用jQuery重写,我在另一个答案的注释中暗示过:

// Wait for the DOM to be ready, jQuery-style:
$(document).ready( function() {
  // Bind a click handler to all <a> elements:
  $('a').click( function(e) {
    // Event is passed into the handler as parameter "e"
    chrome.tabs.create({'url': e.target.href});
  });
});