viewtopic.php?p=228911#p228911
Introduction
The defer and async is becoming standard in the browsers these days and are compatible with all current implementations of javascript where document.write() and document.writeln() (or equivalent, if exists) is not used.
Idea
(assuming the previous paragraph) If we use defer we can make the code exactly as it didn't have both and it will work perfectly, so it does not matter if the browser supports them or not. If the browser does support them, it's only a gain to the user. If it does not support, tough luck user, you'll have to endure it. not supporting them will not reduce the functionality, just the loading time will be greater.
Changes needed to the styles
PhpBB does not make extensive use of these useful-for-non-web-but-poisonous-for-web methods but unfortunatly it does. Anyway, the adaptation is easy.
The poisonous code I found lies in both prosilver and subsilver2 under the file editor.js in the function colorPalette(). I studied the changes needed and they are minor.
Pros
If the browser supports it:
- Faster page loading caused by parallel loading of the js files.
- If the browser does not support these attributes, it work the same way as it is now.
- Besides removing the document.write() the rest of the code works "as is" (according to my research)
- Some code has to be executed differently for this to go well. Eg. All write() and writeln() must be removed.
- A new rule has to appear in the coding guidelines. New rule, code changes are needed.