作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何将 i
的值传输到函数 dispCar()
我试图使用 i
值代表的索引值从数组中挑选对象。
var cars = document.getElementById("carList");
var car = cars.querySelectorAll("li");
for (var i = 0; i < car.length; i++) {
car[i].addEventListener("mouseover", dispCar);
}
function dispCar() {
var carStats = [
{Mfg: "Cadillac", Model: "CTS", Year: "2016", Horsepower: "600+hp", color: "White"},
{Mfg: "Buick", Model: "LaCrosse", Year: "2016", Horsepower: "310hp", color: "Champagn Silver Metalic"},
{Mfg: "Chevrolet", Model: "Camaro", Year: "2016", Horsepower: "475hp", color: "White"}
]
document.getElementById("display").className = "display";
document.getElementById("display").innerHTML = carStats[0].Mfg;
}
最佳答案
addEventListener
接受一个函数作为其第二个参数。您只需传递一个调用 dispCar
的函数,如下所示:
for (var i = 0; i < car.length; i++) {
car[i].addEventListener("mouseover", function() {
dispCar(i);
});
}
您仍然可以从 addEventListener
访问 i
,因为 Closures .
关于javascript - 如何将值从一个区域转移到另一个区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36075840/
我是一名优秀的程序员,十分优秀!