İlk önce, "Mutasyon gözlemcisi nasıl oluşturulur?" post ve ben API'leri gördük.Tetiklenmiş MutationObserver için nasıl bir yığın izini alırsınız?
Bir mutasyonun meydana geldiği zamanın "kaynağını" göstermenin bir yolunu bilen birini merak ediyordum. Büyük olasılıkla bir tür geçici çözüm olabilirdi - API dokümanlarında bundan bahsedemiyorum.
Ben bir elemannone
onun
display
yılında
style
set oluyor nerede olduğunu bulmak için çalışıyorum. nerede JS kaynağında
{
addedNodes: NodeList[]
attributeName: "style"
attributeNamespace: null
newValue: "display: none;"
nextSibling: null
oldValue: ""
previousSibling: null
removedNodes: NodeList[]
target: li#d526d311-e6e0-4ef1-a3a1-f8686bbb468f.group
type: "attributes"
}
Sadece istiyorum
bilmek:
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function (mutation) {
if (mutation.attributeName === "style") {
var extendedMutation = _.extend({}, mutation, {
newValue: $(mutation.target).attr("style")
});
console.log(extendedMutation);
}
});
});
observer.observe(row.element[0], { attributes: true, attributeOldValue: true });
Sunucu mutasyon olayları var ve onlar bu çizgisinde bak:
Benim kod şöyle görünür Geliyor! Herhangi bir fikir?
Lütfen ctrl + f'yi denedim, ancak boşuna. (Chrome için WebkitMutationObserver çalıştı aynı sonuç)
Debugger/İstisna çıkışı:
Yürütmenin bir "dizisi", uyumsuz olduğu anlamına gelmez, "tarih öncesi" yi, yani çağrıldığındaki noktadan önce gerçekleşen şeyin anlık görüntüsünü izlemekte zorluk çekmeniz gerekir. Bir Ajax çağrısı ile (örneğin) Ajax çağrısına yol açan yığın izleme dizesini Ajax nesnesini sarmaya söz verebilirsiniz. MutationObserver ile bu imkansız görünüyor. Can sıkıcı. –