diff --git a/src/General/Main.coffee b/src/General/Main.coffee index 2f990bab2..819e6cb85 100755 --- a/src/General/Main.coffee +++ b/src/General/Main.coffee @@ -40,12 +40,8 @@ Main = $.asap (-> doc = d.documentElement), Main.initFeatures # set up CSS when is completely loaded - $.asap (-> d.documentElement), -> - observer = new MutationObserver -> - if d.body - observer.disconnect() - Main.initStyle() - observer.observe d.documentElement, childList: true + $.asap (-> doc = d.documentElement), -> + $.onExists doc, 'body', Main.initStyle initFeatures: -> switch location.hostname diff --git a/src/General/lib/$.coffee b/src/General/lib/$.coffee index 013f93a6c..24db901d5 100755 --- a/src/General/lib/$.coffee +++ b/src/General/lib/$.coffee @@ -114,6 +114,16 @@ $.asap = (test, cb) -> else setTimeout $.asap, 25, test, cb +$.onExists = (root, selector, cb) -> + if el = $ selector, root + return cb el + observer = new MutationObserver -> + if el = $ selector, root + observer.disconnect() + cb el + observer.observe root, + childList: true + $.addStyle = (css, id, test) -> style = $.el 'style', id: id