新html元素的旧javascript函数

新html元素的旧javascript函数,javascript,html,function,Javascript,Html,Function,现有(纯)javascript函数不能与新的html元素(在该函数之后创建)一起使用: document.querySelector('li').onmouseover=function(){ document.querySelector(“li”).innerHTML=“Hai soffermato il mouse qui!”; } document.querySelector('li').onmouseout=function(){ document.querySelector(“li”

现有(纯)javascript函数不能与新的html元素(在该函数之后创建)一起使用:

document.querySelector('li').onmouseover=function(){
document.querySelector(“li”).innerHTML=“Hai soffermato il mouse qui!”;
}
document.querySelector('li').onmouseout=function(){
document.querySelector(“li”).innerHTML=“Sofferma il mouse qui”;
}
document.getElementById('bottone1')。onclick=function(){
var Lista=document.getElementById('Lista');
var numovoelemento=document.createElement('li');
NuovoElemento.innerText='Nuova voce';//innerHTML
Lista.insertBefore(NuovoElemento,Lista.lastChild);
}
Elenco puntato:

  • 索菲玛老鼠

  • Aggiungi voce
    您可以通过应用事件委派的概念来解决这个问题。这意味着您在父元素上而不是在
    li
    元素上侦听鼠标事件。要做到这一点,您需要查阅传递给回调函数的事件对象,并检查鼠标事件起源的原始元素是否确实是
    li
    元素:

    document.getElementById('lista').onmouseover=function(e){
    如果(e.target.tagName!=“LI”)返回false;
    e、 target.textContent=“Hai soffermato il mouse qui!”;
    }
    document.getElementById('lista').onmouseout=function(e){
    如果(e.target.tagName!=“LI”)返回false;
    e、 target.textContent=“Sofferma il mouse qui”;
    }
    document.getElementById('bottone1')。onclick=function(){
    var Lista=document.getElementById('Lista');
    var numovoelemento=document.createElement('li');
    NuovoElemento.textContent='Nuova voce';
    Lista.insertBefore(NuovoElemento,Lista.lastChild);
    }
    Elenco puntato:

  • 索菲玛老鼠

  • Aggiungi voce
    您可以通过应用事件委派的概念来解决这个问题。这意味着您在父元素上而不是在
    li
    元素上侦听鼠标事件。要做到这一点,您需要查阅传递给回调函数的事件对象,并检查鼠标事件起源的原始元素是否确实是
    li
    元素:

    document.getElementById('lista').onmouseover=function(e){
    如果(e.target.tagName!=“LI”)返回false;
    e、 target.textContent=“Hai soffermato il mouse qui!”;
    }
    document.getElementById('lista').onmouseout=function(e){
    如果(e.target.tagName!=“LI”)返回false;
    e、 target.textContent=“Sofferma il mouse qui”;
    }
    document.getElementById('bottone1')。onclick=function(){
    var Lista=document.getElementById('Lista');
    var numovoelemento=document.createElement('li');
    NuovoElemento.textContent='Nuova voce';
    Lista.insertBefore(NuovoElemento,Lista.lastChild);
    }
    Elenco puntato:

  • 索菲玛老鼠

  • Aggiungi voce
    用lastElementChild替换lastChild它应该可以工作

    检查以下代码段

    window.onload=function(){
    document.querySelector('li').onmouseover=function(){
    document.querySelector(“li”).innerHTML=“Hai soffermato il mouse qui!”;
    }
    document.querySelector('li').onmouseout=function(){
    document.querySelector(“li”).innerHTML=“Sofferma il mouse qui”;
    }
    document.getElementById('bottone1')。onclick=function(){
    var Lista=document.getElementById('Lista');
    var numovoelemento=document.createElement('li');
    NuovoElemento.innerText='Nuova voce1';//innerHTML
    Lista.insertBefore(NuovoElemento,Lista.lastElementChild);
    }
    }
    Elenco puntato:
    

  • 索菲玛老鼠

  • Aggiungi voce
    用lastElementChild替换lastChild它应该可以工作

    检查以下代码段

    window.onload=function(){
    document.querySelector('li').onmouseover=function(){
    document.querySelector(“li”).innerHTML=“Hai soffermato il mouse qui!”;
    }
    document.querySelector('li').onmouseout=function(){
    document.querySelector(“li”).innerHTML=“Sofferma il mouse qui”;
    }
    document.getElementById('bottone1')。onclick=function(){
    var Lista=document.getElementById('Lista');
    var numovoelemento=document.createElement('li');
    NuovoElemento.innerText='Nuova voce1';//innerHTML
    Lista.insertBefore(NuovoElemento,Lista.lastElementChild);
    }
    }
    Elenco puntato:
    

  • 索菲玛老鼠

  • Aggiungi voce
    你的问题是什么?@sidanmor,如果有比我链接的代码更能自我解释的代码,我会很高兴:-)我相信你正在寻找活动代表团。请查看以下答案:和/或注意:您当前的代码没有按预期开始工作。悬停列表项时,它不会更改该特定项的文本,而是更改第一个列表项。此外,事件仅绑定到第一个列表项,而不是列表中的所有项。您没有看到这些问题,因为列表中目前只有一项。您的问题是什么?@sidanmor,如果有比我链接的代码更能自我解释的代码,我会很高兴:-)我相信您正在寻找活动授权。请查看以下答案:和/或注意:您当前的代码没有按预期开始工作。悬停列表项时,它不会更改该特定项的文本,而是更改第一个列表项。此外,事件仅绑定到第一个列表项,而不是列表中的所有项。您没有看到这些问题,因为列表中当前只有一项。您是否尝试在按下按钮时创建的元素上悬停?是否尝试在按下按钮时创建的元素上悬停?