假设我有2个div元素.如果我mouseenter超过第一个元素,我console.log是一个消息,如果是第二个元素,则是另一个消息.
为什么它不适用于下面的纯Javascript?
这种事只有工作,如果我添加事件侦听到每一个人的div如div[0].onmouseenter = function(){}和div[1].onmouseenter = function(){}
提前致谢!
HTML
<div>Test</div>
<div>Test1</div>
Run Code Online (Sandbox Code Playgroud)
使用Javascript
var div = document.querySelectorAll("div");
var test = function(i){
div[i].onmouseenter = function(){
if(div[i]===0){
console.log("success");
} else if (div[i]===1){
console.log("another success");
}
}
}
for(i=0;i<div.length;i++){
test(i);
}
Run Code Online (Sandbox Code Playgroud)
div[i]是对div的引用.你将它与一个数字进行比较.你只需要比较i:
var div = document.querySelectorAll("div");
var test = function(i){
div[i].onmouseenter = function(){
if(i===0){
console.log("success");
} else if (i===1){
console.log("another success");
}
}
}
for(i=0;i<div.length;i++){
test(i);
}Run Code Online (Sandbox Code Playgroud)
<div>Test</div>
<div>Test1</div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50 次 |
| 最近记录: |