Closed kphrx closed 2 years ago
Chromium だけの問題なのでコメントレイヤー周りで処理が分岐してる以下が怪しい
OffscreenLayer
if (util.isChrome()) { frame.removeAttribute('srcdoc'); }
NicoCommentCss3PlayerView
if (env.isChrome()) {iframe.removeAttribute('srcdoc');}
srcdoc
を Element.removeAttribute()
してもしなくても表示は正常。 開発者ツールの Elements で <iframe>
が折り畳まれていても srcdoc
が完全に表示されるから Element.removeAttribute()
していた?
srcdoc
を Element.removeAttribute()
すると <iframe>
の document が初期化される。
NicoCommentCss3PlayerView
で Element.removeAttribute()
せずに処理を進めるとコメントが見える。高さの情報は OffscreenLayer
で計算してるので、こちらでも Element.removeAttribute()
しないようにすることで正常に表示される
srcdoc
を Element.removeAttribute()
するとコメントが表示されない。 Element.removeAttribute()
しなくても開発者ツールの Inspector では srcdoc
のような長い属性は一部だけ表示されて大部分が省略されてるので邪魔にならない
Originally posted by @kphrx in https://github.com/kphrx/ZenzaWatch/discussions/10#discussioncomment-2234882