Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我想将一个JS函数应用于列表中的所有元素,但无法将其复制到每个元素中_Javascript_Html - Fatal编程技术网

Javascript 我想将一个JS函数应用于列表中的所有元素,但无法将其复制到每个元素中

Javascript 我想将一个JS函数应用于列表中的所有元素,但无法将其复制到每个元素中,javascript,html,Javascript,Html,我有一个充满HTML元素的列表,我希望列表中的每个元素在鼠标移动到元素上时使用onmouseover javascript函数改变颜色。我想知道是否有一种方法可以使函数在不复制和粘贴到列表的每个元素的情况下更改每个元素 对不起,我的英语不好,谢谢你的回答。是的,使用CSS悬停是另一种方式。您可以像这样编写自己的javascript `<script type="text/javascript"> function test(id){ var elm = document.getE

我有一个充满HTML元素的列表,我希望列表中的每个元素在鼠标移动到元素上时使用onmouseover javascript函数改变颜色。我想知道是否有一种方法可以使函数在不复制和粘贴到列表的每个元素的情况下更改每个元素


对不起,我的英语不好,谢谢你的回答。

是的,使用CSS悬停是另一种方式。您可以像这样编写自己的javascript

`<script type="text/javascript">
function test(id){
  var elm = document.getElementById(id);  
  var i=0;
  while(elm.children[i]!=null){
  elm.children[i].onclick=function(){
    this.style.backgroundColor="red";
    // do what you want to do to element here
  };
   i++; 
  }
}
</script>

<ul id ='testId' onclick="test(this.id)" >
<li> text1 </li>
<li> text1 </li>
<li> text1 </li>
</ul> `

为元素使用一个公共类,使用该类您可以做到这一点。您可以使用className:hover CSS规则使其在不使用任何javascript的情况下自动运行。谢谢您解决了这个问题。