小编Gre*_*sky的帖子

如何自动重新加载我正在开发的Chrome扩展程序?

每次我在扩展文件夹中保存文件时,我都希望我的chrome扩展程序重新加载,而不必在chrome:// extensions /中明确单击"reload".这可能吗?

编辑:我知道我可以更新 Chrome重新加载扩展程序的时间间隔,这是一个中途解决方案,但我宁愿让我的编辑器(emacs或textmate)触发 - 保存重新加载或要求Chrome监控更改目录.

javascript google-chrome google-chrome-extension

249
推荐指数
12
解决办法
6万
查看次数

SwiftUI ScrollView 的 onTapGesture 被子事件调用

我偶然发现了一个与 SwiftUI 相关的事件冒泡问题,ScrollView并且已经能够将其简化为一小段代码。请参阅以下内容:

struct ContentView: View {
  var body: some View {
    ScrollView() {
      Rectangle()
      .fill(Color.red)
      .frame(width: 200, height: 200)
      .onTapGesture {
        print("Rectangle onTapGesture")
      }
    }
    .onTapGesture {
      print("ScrollView onTapGesture")
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

在 Rectangle 外部敲击时,我在控制台中看到:

ScrollView onTapGesture

但是,当点击矩形时,我看到打印了两行:

ScrollView onTapGesture

Rectangle onTapGesture

ScrollView 似乎也在响应它的孩子的事件......这不应该发生,对吧?我能做些什么来阻止这种情况?

编辑:更疯狂的是,这两行并不总是以相同的顺序出现!我已经看到它们在重新启动应用程序时交换了代码,而没有对代码进行任何更改。

我的目标是在 ScrollView 上使用 onTapGesture 来捕捉“解除”点击,即没有被任何 ScrollView 的孩子捕捉/处理的点击。

非常感谢!

ios swift swiftui

13
推荐指数
1
解决办法
2572
查看次数

onload 或 addEventListener 的顺序以及设置图像的 src 的顺序实际上重要吗?

长期以来,我一直将其视为“绝对真理”:

\n
let img = new Image();\nimg.src = \'... some url ...\'\nimg.onload = function() { console.log(\'onload\') }\n
Run Code Online (Sandbox Code Playgroud)\n

错误的,因为.onload处理程序可能不会被调用。.addEventListener(\'load\', function() ... )设置后使用附加处理程序也是如此.src:它可能不起作用。(请参阅此示例答案,说明:“...在为 src 属性分配值之前添加事件侦听器...”)

\n
\n

这个问题的背景:我在流行的 p5.js 库中找到了一个.src调用之前设置的示例,特别是在这里。我想解决这个问题并提交 PR。但是,我还想创建一个单元测试,该测试在当前代码(调用之前的设置)中失败,并在我的修复中通过。.addEventListener.src =.addEventListener

\n

然而!我还没能真正看到.src之前的设置在什么情况下实际上失败了......!

\n
\n

这是一些代码来演示我的意思:

\n
(function f() {\n  let i = new Image();\n  i.src = \'//placekitten.com/10/10\';\n  document.querySelector(\'body\').appendChild(i);\n  \n  let out = 0;\n  for(let i = 0; …
Run Code Online (Sandbox Code Playgroud)

javascript dom

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

为什么要添加换行符(至少在 Google Chrome 中)

我知道<br>标签是自动关闭的,即它们通常写为<br><br />

出于好奇,有朋友尝试了一下,结果在Google Chrome中,和iea<br>b</br>c一样,变成了换行符。a<br />b<br />c</br>

我们尝试了一个不存在的结束标签,即</potato>没有添加换行符(或任何内容)。但他们</br>做到了。为什么?

html

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