2017-12-27 2 views
0

addEventListenerでコードを追加したいとします。 DOMContentLoadedを使用しますが、選択しようとしているIDはページの読み込みでは使用できません。私はmouseoverを使うことができましたが、それはどんな動きでもコードを反復します。私もclickイベントを使用することができますが、私はそれをクリックして表示するのではなく、表示されたときに表示します。どうすればそれを処理できますか?マウスオーバーでループのないaddEventListenerによるコードの追加

document.addEventListener("mouseover", function(event){ 
    document.querySelector("#id").insertAdjacentHTML('afterend', '<div>asd</div>'); 
}); 
+0

このプロジェクトではjQueryを使用できますか? – JasonB

+0

@jasonBもしそうなら、彼は[jquery]タグを追加しました –

+0

それは受け入れられます。 – servitus

答えて

0

あなたは、私がMutation Observerを示唆しているデリゲート

var yourSpecificId = "some-id"; 

document.addEventListener("mouseover", function(event){ 
    if (event.target.id == yourSpecificId) //only when the id of the mouseover element is matching yourSpecificId 
    { 
    //code you want to execute 
    } 
}); 
0

する必要があります。実装が難しいようですが、非常に簡単です。コールバック関数を提供してから、すぐにif文を使用して、新しく追加された要素に正しいidがあるかどうかを確認できます。その場合は、コードを実行してオブザーバを切断します。

要素が追加され、実行する必要がある機能の実例を投稿した場合は、より簡単にお手伝いできます。

このブログを読む:https://davidwalsh.name/mutationobserver-api

関連する問題