我在https://developer.mozilla.org/en/DOM/element.addEventListener上阅读了文章,但无法理解useCapture属性.定义有:
如果为true,则useCapture指示用户希望启动捕获.启动捕获后,指定类型的所有事件将被分派到已注册的侦听器,然后再分派到DOM树中它下面的任何EventTargets.向上冒泡树的事件不会触发指定使用捕获的侦听器.
在这段代码中,父事件在子事件之前触发,因此我无法理解其行为.文档对象具有usecapture为true且子div具有usecapture设置为false并且文档usecapture被跟随.因此,为什么文档属性优先于子元素.
function load() {
document.addEventListener("click", function() {
alert("parent event");
}, true);
document.getElementById("div1").addEventListener("click", function() {
alert("child event");
}, false);
}Run Code Online (Sandbox Code Playgroud)
<body onload="load()">
<div id="div1">click me</div>
</body>Run Code Online (Sandbox Code Playgroud)
这个C++代码零在我的计算机中在大约2毫秒内初始化200M变量,这远非线性时间.C++如何做到这一点?
#include <iostream>
#include <cstdlib>
static char arr[200000000];
int main ()
{
for (int i = 0; i < 10; i++)
std::cout << (int)arr[rand() % 200000000];
}
Run Code Online (Sandbox Code Playgroud)