简体   繁体   English

onmouseover功能不起作用

[英]onmouseover function didn't work

All the examples i found online didn't work for me. 我在网上找到的所有例子都不适用于我。 All i want is to change color on text when mouse is on it. 我想要的是当鼠标在它上面时改变文本的颜色。 And when move mouse to get old color (and maybe to change size, but if that is too complicated not yet) I know how to do that in CSS but i am learning JS and thats the way i would like it. 并且当移动鼠标以获得旧颜色(并且可能改变尺寸,但是如果那还不复杂)我知道如何在CSS中这样做但我正在学习JS,这就是我想要的方式。 It is only one word in text so it is Class and not ID. 文本中只有一个单词,因此它是Class而不是ID。

 document.getElementsByClassName("akcija").addEventListener("mouseover", mouseOver); document.getElementsByClassName("akcija").addEventListener("mouseout", mouseOut); function mouseOver() { document.getElementsByClassName('akcija').style.color = "black"; } function mouseOut() { document.getElementsByClassName('akcija').style.color = "Blue"; } 
 <div class="akcija" style="width:200px; height:200px"></div> 

document.getElementsByClassName method returns a nodeList , so, you can access a DOM element using its index (zero-based). document.getElementsByClassName方法返回一个nodeList ,因此,您可以使用其索引 (从零开始)访问DOM元素。

Try this: 尝试这个:

document.getElementsByClassName('akcija')[0].style.color = "black";

If you are using ES6 you could do this using Array.from method. 如果您使用的是ES6 ,则可以使用Array.from方法执行此操作。

Array.from(document.getElementsByClassName('akcija')).forEach(function(element) {
  element.addEventListener('mouseover', mouseOver);
});

Correct code implement IMHO 正确的代码实现恕我直言

 var akcjijas = document.getElementsByClassName("akcija"); for (var i in akcjijas) { if (akcjijas.hasOwnProperty(i)){ akcjijas[i].addEventListener("mouseover", mouseOver); akcjijas[i].addEventListener("mouseout", mouseOut); } } function mouseOver() { this.style.color = "black"; } function mouseOut() { this.style.color = "Blue"; } 
 <div class="akcija" style="width:200px; height:100px;background-color: yellow">Akcija</div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM