If I have HTML like this:
<a href="#" class="movieImg"><div class="previewBulk"></div></a>
<a href="#" class="movieImg"><div class="previewBulk"></div></a>
and Javascript like this:
var movie = document.getElementsByClassName("movieImg");
var preview = document.getElementsByClassName("preview");
Is there any way to addEventListener
to 2 movie a tag and preview div
tag?
I try for loop but when I do something like:
for(var i = 0, j=movie.length; i<j; i++){
movie[i].style.left = 100;
preview[i].style.left = 100;
}
I get Uncaught TypeError: Cannot read property 'style' of undefined
.
After change preview to previewBulk, i still get error, my code actually look like this
(function(){
var movie = document.getElementsByClassName("movieImg"),
preview = document.getElementsByClassName("previewBulk");
//result = [];
for(var i = 0, j=movie.length; i<j; i++){
movie[i].addEventListener("mouseover", function(){
preview[i].style.left = ((movie[i].offsetWidth-preview[i].offsetWidth)/2)+20;
preview[i].style.top = -(movie[i].offsetHeight+preview[i].offsetHeight);
preview[i].style.visibility = "visible";
});
movie[i].addEventListener("mouseout", function(){
preview[i].style.visibility = "hidden";
});
}
}());