chrome dev ツールを使用してノード上のリスナーを確認すると、問題が発生します。動的にロードされたコンテンツでリスナーを検出していないようです (ただし、残念ながら、これをフィドルで再現していません)。ただし、jQuery によって委任されたイベントは登録されません。
「イベントの知識」を「リフレッシュ」できる方法はありますか?
var div = document.getElementsByTagName("div")[0],
p = document.getElementsByTagName("p")[0],
vanillaListen = function () {
console.log("clicked via just JS");
};
//attach pure JS listener
//shows up in Event Listeners pane
p.addEventListener("click", vanillaListen);
//attach jquery listener
$("body").on("mouseover", "div", function () {
console.log("div mouse'd over via jQuery"); //does not show up in Event Listeners pane
});
//attach listener from ajax loaded content
$(document).ready(function () {
setTimeout(function () {
$.ajax({
type: "post",
url: "/echo/html/",
dataType: "html",
data: {
html: "<p onClick=\"alert('ajax attached inline event')\">dynamic <p></p>",
delay: 1
},
success: function (returnedData) {
//inline onClick shows up in Event Listeners pane
$("body").append(returnedData);
}
});
}, 2000);
});