File tree Expand file tree Collapse file tree 1 file changed +13
-18
lines changed Expand file tree Collapse file tree 1 file changed +13
-18
lines changed Original file line number Diff line number Diff line change 11function onScriptDisabled ( ) {
2+ let refresh = false ;
23 for ( let noscript of document . querySelectorAll ( "noscript" ) ) {
34 // force show NOSCRIPT elements content
45 let replacement = createHTMLElement ( "span" ) ;
56 replacement . innerHTML = noscript . innerHTML ;
67 noscript . parentNode . replaceChild ( replacement , noscript ) ;
78 // emulate meta-refresh
8- let meta = replacement . querySelector ( 'meta[http-equiv="refresh"]' ) ;
9+ let meta = replacement . querySelector ( 'meta[http-equiv="refresh"]' ) ;
910 if ( meta ) {
10- let content = meta . getAttribute ( "content" ) ;
11- if ( content ) {
12- let [ secs , url ] = content . split ( / \s * ; \s * u r l \s * = \s * / i) ;
13- let urlObj ;
14- if ( url ) {
15- try {
16- urlObj = new URL ( url . replace ( / ^ ( [ ' " ] ? ) ( .+ ?) \1$ / , '$2' ) , document . URL ) ;
17- if ( ! / ^ h t t p s ? : / . test ( urlObj . protocol ) ) {
18- continue ;
19- }
20- } catch ( e ) {
21- continue ;
22- }
23- window . setTimeout ( ( ) => location . href = urlObj , ( parseInt ( secs ) || 0 ) * 1000 ) ;
24- }
25- }
11+ refresh = true ;
12+ document . head . appendChild ( meta ) ;
2613 }
2714 }
28-
15+ if ( refresh ) {
16+ let html = document . documentElement . outerHTML ;
17+ window . addEventListener ( "load" , e => {
18+ let document = window . wrappedJSObject . document ;
19+ document . open ( ) ;
20+ document . write ( html ) ;
21+ document . close ( ) ;
22+ } ) ;
23+ }
2924 {
3025 let eraser = {
3126 tapped : null ,
You can’t perform that action at this time.
0 commit comments