Hello All, recently I found it is hard to check/edit CSS in browser DevTools After some investigation i found the issue is cased by "cross browser way to check when the css is loaded" in wicket-ajax-jquery
I would like to propose to change it as follows --- a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js @@ -1821,28 +1821,21 @@ $css.attr(this.name, this.value); }); - // add element to head - Wicket.Head.addElement(css); - - // cross browser way to check when the css is loaded - // taken from http://www.backalleycoder.com/2011/03/20/link-tag-css-stylesheet-load-event/ - // this makes a second GET request to the css but it gets it either from the cache or - // downloads just the first several bytes and realizes that the MIME is wrong and ignores the rest - var img = document.createElement('img'); var notifyCalled = false; - img.onerror = function () { + css.onerror = function () { if (!notifyCalled) { notifyCalled = true; notify(); } }; - img.src = css.href; - if (img.complete) { - if (!notifyCalled) { - notifyCalled = true; - notify(); - } + css.onload = function () { + if (!notifyCalled) { + notifyCalled = true; + notify(); + } } + // add element to head + Wicket.Head.addElement(css); return FunctionsExecuter.ASYNC; }); It work as expected in Chrome/Chromium/FF/IE11 latest Unfortunately I was unable to test using Edge Is it worth PR? -- WBR Maxim aka solomax