我正在使用 aMutationObserver并且我想訪問屬性的新值。我試試這個:
newValue = mutation.target[mutation.attributeName]
但是,例如,如果mutation.attributeName == 'style', thenmutation.oldValue和 mynewValue的格式不同:mutation.oldValue是一個格式為 的字串newValue.cssText,而newValue它本身是一個CSSStyleDeclaration物件。
我想避免為每個可能的mutation.attributeName事情編程,比如“如果'style',使用.cssText,如果......,使用......”。可能的屬性太多了。
如何以 的格式獲取新值oldValue?
相關問題沒有回答我的問題:
mutation["addedNodes"][0]在我的情況下,從這里是未定義的。- 此答案要求元素具有 ID。在某些情況下,這可能很難實作。
編輯:
- 這個答案表明
newValue = mutation.target.attributes.getNamedItem(mutation.attributeName),但它的格式也不同mutation.oldValue。有關詳細資訊,請參見此處。
uj5u.com熱心網友回復:
屬性和屬性是不同的東西。要獲取屬性字串,您可以使用getAttribute:
newValue = mutation.target.getAttribute(mutation.attributeName);
您正在從元素實體訪問屬性,在這種情況下,它style是一個CSSStyleDeclaration物件,反映了來自style屬性的決議的樣式屬性。雖然許多屬性直接反映為屬性 ( id, name),但其他屬性采用不同的形式(如style)或根本不作為元素的屬性可用。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/403292.html
標籤:
上一篇:重復CSS三角形的水平線
下一篇:<form>水平顯示元素
