Reputation: 720
I have a hyperlink on my page. I want to show a div when I mouse over the hyperlink, and hide it when I mouseout.
My html:
<a onmouseover="showDiv(this)" onmouseout="hideDiv(this)">
<img>
<div class="inner-block">
Content
</div>
</a>
Javascript:
function showDiv(elem) {
elem.getElementsByTagName("div").style.visibility="visible";
}
function hideDiv(elem) {
elem.getElementsByClassName("inner-block2").style.visibility="hidden";
}
and CSS:
.inner-block {
visibility: hidden
}
I've tried getElementsByTagName, getElementsByClassName, whatever I try I get
Uncaught TypeError: Cannot set property 'visibility' of undefined
Upvotes: 0
Views: 8595
Reputation: 5640
try this :
function showDiv(elem) {
elem.getElementsByTagName("div")[0].style.visibility="visible";
}
function hideDiv(elem) {
elem.getElementsByTagName("div")[0].style.visibility = "hidden"
}
since getElementsByClassName("inner-block2") will return NodeList
Upvotes: 3