| <!DOCTYPE html> |
| <html> |
| <head> |
| <title>Test case</title> |
| </head> |
| |
| <body> |
| <div style="background: green; width: 32px; height: 32px; position: absolute"></div> |
| |
| <script> |
| window.addEventListener( |
| 'DOMContentLoaded', |
| function() { |
| // Must dynamically fetch another stylesheet |
| var el = document.createElement('link'); |
| el.href = 'data:text/css,'; |
| el.type = 'text/css'; |
| el.rel = 'stylesheet'; |
| document.getElementsByTagName('head')[0].appendChild(el); |
| |
| // Based on jQuery pre-1.6.2 code, which creates a temporary <body> |
| // element to do tests on: |
| // https://github.com/jquery/jquery/blob/304dd618b7aa17158446bedd80af330375d8d4d4/src/support.js#L138 |
| // The behavior was changed for jQuery 1.6.2 with this commit: |
| // https://github.com/jquery/jquery/commit/ceba855c010c792aad8fc15edc06b86285f71142/ |
| var anotherBody = document.createElement('body'); |
| |
| document.documentElement.insertBefore( |
| anotherBody, document.documentElement.firstChild); |
| |
| // Triggering a style recalc here is necessary. |
| anotherBody.offsetHeight; |
| |
| anotherBody.parentNode.removeChild(anotherBody); |
| }, |
| false); |
| </script> |
| </body> |
| </html> |