javascript

java

python

c#

node.js

android

reactjs

c++

php

jquery

html

css

git

ruby-on-rails

.net

ios

sql

c

string

ruby

javascript-Chrome扩展程序:如何在新标签页中打开链接?

在我的Stackoverflow文件夹中,我有stackoverflow.ico和2个波纹管文件。 将其导入Chrome时,它会在地址栏中显示该图标,但是当我单击它时,Chrome不会打开任何新标签。 我究竟做错了什么?

manifest.json

{
  "name": "Stackoverflow",
  "version": "1",
  "browser_action":
  {
    "default_icon": "stackoverflow.ico"
  },
  "background":
  {
    "page": "index.html"
  },
  "permissions": ["tabs"],
  "manifest_version": 2
}

的index.html

<html>
  <head>
    <script>
      chrome.browserAction.onClicked.addListener(function(activeTab)
      {
        var newURL = "http://stackoverflow.com/";
        chrome.tabs.create({ url: newURL });
      });
    </script>
  </head>
</html>
trans by 2019-10-09T18:10:12Z

javascript-Chrome扩展程序中的onClick无法正常工作

这似乎是最容易的事情,但它没有用。 在普通浏览器中,.html和.js文件可以完美运行,但是在Chrome扩展程序中,2557734118079595595520函数无法执行应有的功能。

.js文件:

function hellYeah(text) {
  document.getElementById("text-holder").innerHTML = text;
}

.html文件:

<!doctype html>
<html>
  <head>
    <title>
      Getting Started Extension's Popup
    </title>
    <script src="popup.js"></script>
  </head>
  <body>
    <div id="text-holder">
      ha
    </div>
    <br />
    <a onClick=hellYeah("xxx")>
      hyhy
    </a>
  </body>
</html>

因此,基本上,一旦用户单击“ hyhy”,“ ha”应更改为“ xxx”。 再说一遍-它在浏览器中完美运行,但在扩展程序中不起作用。 你知道为什么吗? 以防万一我还要在下面附加manifest.json。

提前致谢!

manifest.json的:

{
  "name": "My First Extension",
  "version": "1.0",
  "manifest_version": 2,
  "description": "The first extension that I made.",
  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  },
  "permissions": [
    "http://api.flickr.com/"
  ]
}
trans by 2019-10-06T19:36:05Z

Chrome扩展程序多久自动更新一次?

当我将新版本的Chrome扩展程序推送到Chrome网上应用店时,更新的版本需要多长时间才能到达当前用户?

我大约六个小时前发布了更新,但扩展程序尚未为我更新。 Chrome文档尚不清楚。

trans by 2019-09-27T03:53:41Z

数据包捕获 - 是否有像Tamperdata for Chrome这样的扩展程序?

我需要在浏览器中捕获HTTP流量。 TamperData是跟踪和修改http / https请求的扩展

我知道像Fiddler这样的工具,但我正在寻找一个在Web浏览器中作为扩展名运行的插件。

trans by 2019-09-10T23:23:31Z

如何使用Chrome的扩展“Advanced Rest Client”测试REST API

按照以下链接的说明,我成功为我的Django应用程序构建了一个REST API:[http://django-rest-framework.org/tutorial/quickstart。]

我可以通过在Unix提示符下执行以下操作来测试它:

curl -H 'Accept: application/json; indent=4' -u root:myPassword http://www.myWebsite.com/users/

有用 :)

但是,我想使用Chrome扩展程序Advanced Rest Client来测试相同的功能。我已经安装了扩展程序,但我不知道在哪里/如何放置字段。 当我做出受过教育的猜测时(正如您在屏幕截图中看到的那样),它拒绝它说“未提供身份验证凭据”

screenshot of failing request

我应该如何/在何处将参数指定给REST API?

trans by 2019-09-10T07:12:52Z

Google Chrome扩展程序 - 无法使用C加载本地图像

我有一个简单的Chrome扩展程序,它使用内容脚本功能来修改网站。 更具体地说,所述网站的background-image

出于某种原因,我似乎无法使用本地图像,即使它们被包装在扩展中。

body {
    background: #000 url('image.jpg') !important;
    background-repeat: repeat !important;
}

就是这样,最简单的CSS ......但它不起作用。 浏览器不加载图像。

trans by 2019-09-03T12:39:02Z

javascript - Chrome扩展程序 - 获取DOM内容

我正在尝试从弹出窗口中访问activeTab DOM内容。 这是我的清单:

{
  "manifest_version": 2,

  "name": "Test",
  "description": "Test script",
  "version": "0.1",

  "permissions": [
    "activeTab",
    "https://api.domain.com/"
  ],

  "background": {
    "scripts": ["background.js"],
    "persistent": false
  },
  "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",

  "browser_action": {
    "default_icon": "icon.png",
    "default_title": "Chrome Extension test",
    "default_popup": "index.html"
  }
}

我真的很困惑后台脚本(具有持久性的事件页面:false)或content_scripts是否可行。 我已经阅读了所有文档和其他SO帖子,但对我来说仍然没有意义。

有人可以解释为什么我可以使用一个而不是另一个。

这是我一直在尝试的background.js:

chrome.extension.onMessage.addListener(
  function(request, sender, sendResponse) {
    // LOG THE CONTENTS HERE
    console.log(request.content);
  }
);

我只是从弹出控制台执行此操作:

chrome.tabs.getSelected(null, function(tab) {
  chrome.tabs.sendMessage(tab.id, { }, function(response) {
    console.log(response);
  });
});

我越来越:

Port: Could not establish connection. Receiving end does not exist. 

更新:

{
  "manifest_version": 2,

  "name": "test",
  "description": "test",
  "version": "0.1",

  "permissions": [
    "tabs",
    "activeTab",
    "https://api.domain.com/"
  ],

  "content_scripts": [
    {
      "matches": ["<all_urls>"],
      "js": ["content.js"]
    }
  ],

  "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",

  "browser_action": {
    "default_icon": "icon.png",
    "default_title": "Test",
    "default_popup": "index.html"
  }
}

content.js

chrome.extension.onMessage.addListener(
  function(request, sender, sendResponse) {
    if (request.text && (request.text == "getDOM")) {
      sendResponse({ dom: document.body.innertHTML });
    }
  }
);

popup.html

chrome.tabs.getSelected(null, function(tab) {
  chrome.tabs.sendMessage(tab.id, { action: "getDOM" }, function(response) {
    console.log(response);
  });
});

当我运行它时,我仍然得到同样的错误:

undefined
Port: Could not establish connection. Receiving end does not exist. lastError:30
undefined
trans by 2019-09-02T23:37:39Z

检测Chrome扩展程序首次运行/更新

扩展如何发现它是第一次运行或刚刚更新,以便扩展可以执行某些特定操作? (例如,打开帮助页面或更新设置)

trans by 2019-09-01T12:39:04Z

从检查器(webkit,firebug等)导出CSS更改

当我使用CSS时,我会经常在浏览器中测试 - 比如Chrome - 右键单击一个元素,单击Inspect Element,然后在那里编辑CSS。 使用箭头键来改变边距和填充等内容可以让事情变得非常容易。

然后不太难以接受这些更改并将它们应用到CSS文件中,但如果我可以在检查器中右键单击选择器并选择&#34; export&#34;那就太酷了。 或&#34;复制&#34;,并在剪贴板中提供内容。

这样的事情存在吗?

trans by 2019-08-13T07:01:05Z

javascript - 如何在chrome扩展中使用jQuery?

我正在写一个chrome扩展名。 我想在我的扩展中使用background.js。 我没有使用任何背景页面,只是一个后台脚本。

这是我的文件:

background.js

{
    "manifest_version": 2,

    "name": "Extension name",
    "description": "This extension does something,",
    "version": "0.1",

    "permissions": [
        "activeTab"
    ],

    "browser_action": {
        "default_icon": "images/icon_128.png"
    },

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

    "icons": {
        "16": "images/icon_16.png",
        "48": "images/icon_48.png",
        "128": "images/icon_128.png"
    }
}

我的background.js文件只运行另一个名为work.js的文件

// Respond to the click on extension Icon
chrome.browserAction.onClicked.addListener(function (tab) {
    chrome.tabs.executeScript({
        file: 'work.js'
    });
});

我的扩展的主要逻辑是在background.js内。我认为这个问题的内容并不重要。

我想问的是如何在扩展中使用jQuery。 因为我没有使用任何背景页面。 我不能只是添加jQuery。 那么如何在我的扩展中添加和使用jQuery呢?

我尝试从background.js文件中运行jQuery和我的work.js。

// Respond to the click on extension Icon
chrome.browserAction.onClicked.addListener(function (tab) {
    chrome.tabs.executeScript({
        file: 'thirdParty/jquery-2.0.3.js'
    });
    chrome.tabs.executeScript({
        file: 'work.js'
    });
});

并且它工作正常,但我担心添加以这种方式执行的脚本是否异步执行。 如果是,则可能发生work.js甚至在jQuery(或我将来可能添加的其他库)之前运行。

我还想知道在我的chrome扩展中使用第三方库的正确和最佳方式是什么。

trans by 2019-08-06T02:02:14Z

macos - 在哪里可以找到Mac上谷歌浏览器的扩展安装文件夹?

我无法在〜/ Library / Application Support / Google / Chrome /下找到它们; 他们在哪?

  • Mac Pro 10.8.4
  • Chrome版本26.0.1410.65
trans by 2019-07-21T04:56:46Z

Chrome开发者工具:在单独的视图/垂直平铺中查看控制台和源视图?

Chrome开发者工具:有没有办法在单独的视图中查看Sources标签和Console标签? 我经常想同时看看这两个。

Sources选项卡上按Esc将让我看到底部Console的小视图。 但是我希望同时对这两者有更大的看法。 这可能吗?

如果没有,这是Chrome扩展可能做的事情吗?

编辑:

澄清 - 我知道如何取消停靠开发工具窗口(这是我的默认设置)。 只是贪婪我想,并想知道我是否可以进一步拆分SourcesConsole进入单独的未停靠的窗口(或者至少,他们的视图在同一个窗口上垂直分割,而不是像Esc那样水平分割)

trans by 2019-07-20T00:40:37Z

禁用Chrome中的开发者模式扩展程序弹出窗口

自上周发布chrome(34.0.1847.116)以来,我在使用watir-webdriver运行自动化测试时收到了“禁用开发人员模式扩展”。

这似乎是令人反感的延伸,但对我来说这是一个潜在危险的扩展,因为它是由chromedriver使用的。

任何已找到此修复程序的人,因为我无法回滚到以前的版本或找到旧版本的安装程序回滚到这对我的测试造成严重破坏。

enter image description here

enter image description here

trans by 2019-06-09T04:27:12Z

是否可以在Chrome网络检查员网络标签中隐藏扩展程序资源?

当我在Chrome网络检查器中查看页面的下载资源时,我还会看到某些扩展程序所请求的HTML / JS / CSS。

enter image description here

在上面的示例中,chrome-extension://,indicator.jsindicator.css实际上是可读性Chrome扩展程序的一部分,不属于我的应用程序。

在这种特殊情况下,这不是一件大事,但是在一个更复杂的页面上安装了几个扩展程序,它可能会非常拥挤!

我想知道是否有办法从此列表中过滤掉任何与扩展相关的资源(即使用chrome-extension://协议的任何请求)。

有谁知道我怎么能做到这一点?

trans by 2019-06-08T08:40:41Z

单元测试 - 如何测试chrome扩展?

有没有办法做到这一点? 我正在编写一个与网站交互作为内容脚本的扩展程序,并使用localstorage保存数据。 是否有可用于测试此行为的工具,框架等? 我意识到有一些用于测试javascript的通用工具,但是那些足以测试扩展的能力吗? 单元测试是最重要的,但我也对其他类型的测试(例如集成测试)感兴趣。

trans by 2019-05-23T09:06:50Z

javascript - Chrome扩展程序消息传递:响应不是传单

我试图在内容脚本和扩展名之间传递消息

这是我在content-script中的内容

chrome.runtime.sendMessage({type: "getUrls"}, function(response) {
  console.log(response)
});

在我的后台脚本中

chrome.runtime.onMessage.addListener(
  function(request, sender, sendResponse) {
    if (request.type == "getUrls"){
      getUrls(request, sender, sendResponse)
    }
});

function getUrls(request, sender, sendResponse){
  var resp = sendResponse;
  $.ajax({
    url: "http://localhost:3000/urls",
    method: 'GET',
    success: function(d){
      resp({urls: d})
    }
  });

}

现在,如果我在getUrls函数中的ajax调用之前发送响应,则响应发送成功,但是在发送响应时ajax调用的success方法中它不发送它,当我进入调试时我可以看到 在sendResponse函数的代码中端口为null。

trans by 2019-05-20T17:05:53Z

javascript - google chrome extension :: console.log()来自后台页面?

如果我从弹出页面或其他任何脚本调用console.log()它可以正常工作。

但是,由于后台页面没有直接从弹出页面运行,因此它不包含在控制台中。

有没有办法在后台页面中显示console.log()以显示在弹出页面的控制台中?

有没有办法,从后台页面调用弹出页面中的一个函数?

trans by 2019-05-08T17:11:25Z

谷歌浏览器 - 使用ECMAScript 6

我正在寻找一种在我的浏览器控制台中运行ECMAScript 6代码的方法,但是大多数浏览器都不支持我正在寻找的功能。 例如,Firefox是唯一支持箭头功能的浏览器。

有没有办法(扩展名,用户脚本等)我可以在Chrome上运行这些功能?

trans by 2019-05-07T23:26:14Z

调试 - 从Chrome扩展程序中的background.js读取控制台消息的位置?

我刚开始使用谷歌Chrome扩展程序,我似乎无法从我的后台js登录到控制台。 发生错误时(例如,由于语法错误),我也找不到任何错误消息。

我的清单文件:

{
  "name": "My First Extension",
  "version": "1.0",
  "manifest_version": 2,
  "description": "The first extension that I made.",
  "browser_action": {
    "default_icon": "icon.png"
  },
  "background": {
    "scripts": ["background.js"]
  },
  "permissions": [
    "pageCapture",
    "tabs"
  ]
}

background.js:

alert("here");
console.log("Hello, world!")

当我加载扩展时,警报出现但我没有看到任何记录到控制台。 我究竟做错了什么?

trans by 2019-04-30T04:05:32Z

javascript - AngularJS在扩展名pag中将URL更改为“unsafe:”

我正在尝试将Angular与应用列表一起使用,每个应用都是一个链接,可以更详细地查看应用(unsafe:):

<a id="{{app.id}}" href="apps/{{app.id}}" >{{app.name}}</a>

每次我点击其中一个链接时,Chrome都会将网址显示为

unsafe:chrome-extension://kpbipnfncdpgejhmdneaagc.../apps/app.id

unsafe:来自哪里?

trans by 2019-04-08T16:52:42Z

1 2 下一页 共2页