小编Hai*_* Ai的帖子

如何在Windows应用商店上发布Edge扩展?

自Windows 10周年更新以来,我开始为Edge开发扩展.

我想在Windows商店中发布其中一些,但我不知道如何.我正在加载扩展程序.你如何打包并提交?

microsoft-edge microsoft-edge-extension

21
推荐指数
1
解决办法
5252
查看次数

如何在Android移动Chrome浏览器中运行chrome扩展

我创建了chrome扩展程序,它在桌面上的Web浏览器中运行.但是我无法在移动Chrome浏览器中下载.我想在移动和桌面Chrome浏览器中运行相同的扩展程序.那么有没有办法在移动Chrome浏览器中运行扩展.

google-chrome google-chrome-extension

15
推荐指数
2
解决办法
4万
查看次数

内容脚本是否可以访问newtab页面?

更新

感谢@kofifus提供的信息,Chrome从61开始明确禁止其默认新标签页上的内容脚本

以前

假设我有以下示例扩展名,它将test在控制台中输出.

的manifest.json

{
  "name": "Test",
  "version": "1.0",
  "manifest_version": 2,
  "content_scripts": [
    {
      "matches": [
        "<all_urls>"
      ],
      "js": [
        "content.js"
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

content.js

console.log('test');
Run Code Online (Sandbox Code Playgroud)

上面的扩展会在chrome://newtab页面中运行良好吗?

一些有用的信息:

  1. 我知道默认情况下chrome扩展程序无法访问chrome://页面,我们可以通过更改此行为chrome://flags/#extensions-on-chrome-urls

  2. chrome://newtab实际上是一个网址https://www.google.co.jp/_/chrome/newtab?espv=2&ie=UTF-8,所以不应该受到上述限制.

  3. 有许多鼠标手势扩展可用,如crxMouse,它们在chrome://newtab页面上运行良好

  4. 还有一些声音说它不允许注入内容脚本chrome://newtab,例如,@ Xan在这个答案下面的评论 在此输入图像描述这位作者的情况 在此输入图像描述

因此它在不同设备(或设置?)中的不同行为看起来很奇怪.是否有关于内容脚本是否可以在chrome://newtab页面中运行的官方声明?或者是否有一个设置我们可以改变这种行为?

google-chrome chromium google-chrome-extension

14
推荐指数
1
解决办法
1927
查看次数

是否有针对Microsoft Edge扩展的文档或SDK?

是否有任何已发布的文档或用于编写Microsoft Edge扩展的SDK?如果是这样,我找不到它.如果没有,是否有可用的ETA?在Windows 10发布之前获得跳转会很不错.

browser-extension windows-10 microsoft-edge microsoft-edge-extension

8
推荐指数
2
解决办法
2246
查看次数

在visual studio 2015中建立铬

我正在关注The Chromium Projects在Windows上构建Chrome浏览器.当我去Run后同步钩子步骤并运行

gclient runhooks
Run Code Online (Sandbox Code Playgroud)

以下错误显示,

________ running     'D:\Chromium\depot_tools\depot_tools\python276_bin\python.exe src/build/landmines.py' in 'D:\Chromium\chromium'
Traceback (most recent call last):
  File "src/build/landmines.py", line 147, in <module>
sys.exit(main())
  File "src/build/landmines.py", line 134, in main
gyp_environment.SetEnvironment()
  File "D:\Chromium\chromium\src\build\gyp_environment.py", line 33, in SetEnvironment
vs_toolchain.SetEnvironmentAndGetRuntimeDllDirs()
  File "D:\Chromium\chromium\src\build\vs_toolchain.py", line 73, in SetEnvironmentAndGetRuntimeDllDirs
os.environ['GYP_MSVS_OVERRIDE_PATH'] = DetectVisualStudioPath()
  File "D:\Chromium\chromium\src\build\vs_toolchain.py", line 139, in DetectVisualStudioPath
' not found.') % (version_as_year))
Exception: Visual Studio Version 2013 (from GYP_MSVS_VERSION) not found.
Error: Command 'D:\\Chromium\\depot_tools\\depot_tools\\python276_bin\\python.exe src/build/landmines.py' returned non-zero exit status 1 …
Run Code Online (Sandbox Code Playgroud)

chromium visual-studio-2015

8
推荐指数
1
解决办法
4094
查看次数

iOS 10 设备上奇怪的基于 Swift 4 闭包的 KVO 错误

当我使用以下基于 Swift 4 闭包的 KVO 方式时,我在 iOS 10 设备上崩溃了

class A: NSObject {
    @objc dynamic var value: Int = 0

    var observation: NSKeyValueObservation?

    override init() {
        super.init()

        // Crash
        self.observation = self.observe(\A.value, options: [.new], changeHandler: { (_, change) in

        })
    }
}

var a: A? = A()
a = nil
Run Code Online (Sandbox Code Playgroud)

崩溃信息:

*** 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“A 类的实例 0x 已被释放,而键值观察者仍向其注册。当前观察信息:(上下文:0x,属性:0x>

我用谷歌搜索了一下,发现这是一个 Swift 错误:https : //bugs.swift.org/browse/SR-5816,解决方法是在里面添加以下几行deinit

deinit {
    if #available(iOS 11.0, *) {

    } else {
        if let observation = self.observation { …
Run Code Online (Sandbox Code Playgroud)

key-value-observing ios swift

7
推荐指数
0
解决办法
361
查看次数

根据“单一用途 Chrome 扩展程序政策”下架的 Chrome 扩展程序

我制作了一个名为 Newsprompt 的 chrome 扩展:个人突发新闻(gcajgpbafhkbkdpbaaipjoiajnangjhp)最近被删除,声明它违反了“单一用途的 Chrome 扩展政策”。它在新标签中显示突发新闻,并不断了解用户偏好以推送用户感兴趣的文章(不是新闻)。没有添加,没有隐藏功能。这就是扩展所做的全部。自从它被撤下以来,我一直在跟进 chromewebstore-dev-support@google.com 并删除了很多功能(个性化就是其中之一),但所有这些功能都从文档中复制粘贴了完全相同的行https://developer.chrome.com/extensions/single_purpose不符合他们的标准。感觉就像与一个机器人交谈,它的唯一反应是“它不符合标准”。所以我的问题是:
1. 有没有开发人员遇到过同样的问题?(我看到一些开发人员在 google 组上抱怨,但没有人得到解决方案)。如果是的话,他们是如何解决/升级问题的(感觉就像白白浪费了我团队 6 个月的努力)。
2. 我试过https://support.google.com/chrome_webstore/contact/developer_support但没有反应。
3. 任何进一步的线索将不胜感激。

google-chrome google-chrome-extension chrome-web-store

5
推荐指数
0
解决办法
645
查看次数

Chrome devtools为IndexedDB扩展

我正在尝试构建一个促进CRUD操作的工具,即Chrome中的IndexedDB GUI.当我在chrome dev工具面板中打开数据库连接时,我发现它为panel.html提供了一个单独的IndexedDB存储.Panel无法访问当前页面的数据库.

我们有什么方法可以从chrome dev工具的扩展面板访问页面的数据库.

javascript google-chrome google-chrome-extension google-chrome-devtools indexeddb

5
推荐指数
1
解决办法
1083
查看次数

从Chrome扩展程序的“ options_ui”页面显示警报

自Chrome 40以来,Chrome扩展程序的选项页面已具有第2版。我尝试创建一个带有一个简单按钮的选项V2页面alert

js

function resetAll() {
  alert("Not yet implemented.");
}

document.getElementById("reset-button").onclick = resetAll;
Run Code Online (Sandbox Code Playgroud)

html

<button id="reset-button">Reset All</button>
Run Code Online (Sandbox Code Playgroud)

当我单击选项页面中的按钮时,什么也没有发生。我什至拉起了Javascript调试器,看看我的代码是否真正在运行。确实如此,但是没有任何警报出现。

如果我使用的是Chrome扩展程序的较早的选项页面格式,则警报会毫无问题地显示。

有没有办法alert用OptionsV2 创建浏览器本机?

javascript google-chrome-extension

5
推荐指数
1
解决办法
831
查看次数

更改parentNode.innerHTML后,无法访问parentNode

假设我有以下 DOM 结构和脚本

var test = document.getElementById('test');
test.parentNode.innerHTML += 'hello';
console.log(test.parentNode); // null
console.log(document.getElementById('test').parentNode); // normal result
Run Code Online (Sandbox Code Playgroud)
<div>
<div id="test"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

正如上面的脚本所说,第一个输出null而第二个输出实际节点,有谁知道为什么第一个输出null而不是普通节点?

html javascript

5
推荐指数
1
解决办法
2555
查看次数