Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将当前选项卡url添加到chrome.tabs.create url_Javascript_Google Chrome_Tabs - Fatal编程技术网

Javascript 如何将当前选项卡url添加到chrome.tabs.create url

Javascript 如何将当前选项卡url添加到chrome.tabs.create url,javascript,google-chrome,tabs,Javascript,Google Chrome,Tabs,我在Chrome中添加了一个conext菜单,当单击该菜单时,将使用Chrome.tabs.create打开一个Wufoo表单。我需要用户在wufoo表单中填写的一个字段是当前选项卡的URL。因此,我可以简单地将我的var a添加到url中,并且应该添加它。如果var a只是一些文本,但当我尝试添加当前选项卡url时,会将“undefined”添加到url中,那么这种方法就可以工作。我犯了什么错?如何获取要添加的选项卡url 下面是javascript chrome.contextMenus.o

我在Chrome中添加了一个conext菜单,当单击该菜单时,将使用Chrome.tabs.create打开一个Wufoo表单。我需要用户在wufoo表单中填写的一个字段是当前选项卡的URL。因此,我可以简单地将我的var a添加到url中,并且应该添加它。如果var a只是一些文本,但当我尝试添加当前选项卡url时,会将“undefined”添加到url中,那么这种方法就可以工作。我犯了什么错?如何获取要添加的选项卡url

下面是javascript

chrome.contextMenus.onClicked.addListener(function(info, tabs){  
var a = chrome.tabs.query({'active': true, 'windowId':chrome.windows.WINDOW_ID_CURRENT},
function(tabs){
  return(tabs[0].url);
 }
 );
    if ( info.menuItemId === 'Add a Link' ) 
            chrome.tabs.create( {url:  "https://ownthistown.wufoo.com/forms/m3u64zc05w2a0a/def/field10=" + a  });

不能使用这样的内部函数的返回变量。你必须这样做

chrome.contextMenus.onClicked.addListener(function(info, tabs){
  chrome.tabs.query({'active': true}, function (tabs) {
      if(info.menuItemId === 'Add a Link')
        chrome.tabs.create({url:  "https://ownthistown.wufoo.com/forms/m3u64zc05w2a0a/def/field10=" + tabs[0].url });
  });
});

成功了,。如果我希望能够从网页和url名称(或标题,不确定其名称)中添加所选文本,我该如何在此功能中执行此操作?
info.selectionText
提供对突出显示文本的访问权限,并且
if(info.menuItemId==“contextselection”)
将确保在显示contextmenu时选择了一些文本