小编Nic*_*ick的帖子

将焦点设置在webextension弹出窗口中

所以我正在为Firefox写一个简单的webextension.它使用browserAction弹出窗口从用户获取一些数据.此数据输入textArea元素.如果textArea元素在弹出窗口出现时具有焦点,则对用户来说会很方便.我认为在弹出窗口的JavaScript中设置焦点是一个相对简单的问题,如下所示:

document.addEventListener('DOMContentLoaded', function(event) {
  document.getElementById('texarea-id').focus();
});
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

经过一些调查(在该功能中设置其他可见的变化,并在其他情况下设置焦点),在我看来,整个弹出窗口在打开时没有焦点.

有没有办法解决这个问题,并在打开browserAction弹出窗口时获得焦点?

firefox-addon-webextensions

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

如何将编译时未知数量的迭代器压缩在一起?

我有许多由用户输入指定的 Rust 迭代器,我想以锁步方式进行迭代。

这听起来像是一个类似 的工作Iterator::zip,只是我可能需要将两个以上的迭代器压缩在一起。我查看了itertools::multizipitertools::izip,但是它们都要求在编译时知道要压缩的迭代器的数量。对于我的任务,要压缩在一起的迭代器数量取决于用户输入,因此在编译时无法知道。

我希望有类似Pythonzip函数的东西,它需要一个可迭代的可迭代对象。我想函数签名可能看起来像:

fn manyzip<T>(iterators: Vec<T>) -> ManyZip<T>
where
    T: Iterator
Run Code Online (Sandbox Code Playgroud)

如何压缩两个以上的迭代器?仅针对编译时已知迭代器数量的情况。

我可以使用索引等解决我的特定问题,只是感觉应该有更好的方法。

iterator rust

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