Transpiled version (31L) is out of date.
1 | // fixes <script> tags in inserted HTML (e.g. via innerHTML) |
2 | // TODO: Do we handle <script src=""> correctly? |
3 | |
4 | sS js_nodeScriptReplace() {
|
5 | ret [[ |
6 | function nodeScriptReplace(node) {
|
7 | if (nodeScriptIs(node)) {
|
8 | node.parentNode.replaceChild(nodeScriptClone(node), node); |
9 | console.log("nodeScriptReplace finished replacement");
|
10 | } else {
|
11 | var i = -1, children = node.childNodes; |
12 | while (++i < children.length) |
13 | nodeScriptReplace(children[i]); |
14 | } |
15 | |
16 | return node; |
17 | } |
18 | |
19 | function nodeScriptClone(node){
|
20 | var script = document.createElement("script");
|
21 | if (node.src) |
22 | console.log("nodeScriptReplace including " + node.src);
|
23 | else {
|
24 | console.log("nodeScriptReplace inline script");
|
25 | script.text = node.innerHTML; |
26 | } |
27 | |
28 | var i = -1, attrs = node.attributes, attr; |
29 | while ( ++i < attrs.length ) |
30 | script.setAttribute( (attr = attrs[i]).name, attr.value ); |
31 | return script; |
32 | } |
33 | |
34 | function nodeScriptIs(node) {
|
35 | return node.tagName === 'SCRIPT'; |
36 | } |
37 | ]]; |
38 | } |
download show line numbers debug dex old transpilations
Travelled to 4 computer(s): bhatertpkbcr, mowyntqkapby, mqqgnosmbjvj, pyentgdyhuwx
No comments. add comment
| Snippet ID: | #1032354 |
| Snippet name: | js_nodeScriptReplace - use js_nodeScriptReplace2 instead |
| Eternal ID of this version: | #1032354/7 |
| Text MD5: | 4a17942db2ef1cf6d3d6d0d54c05ec46 |
| Author: | stefan |
| Category: | javax / javascript |
| Type: | JavaX fragment (include) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2021-10-06 05:13:51 |
| Source code size: | 1132 bytes / 38 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 358 / 484 |
| Version history: | 6 change(s) |
| Referenced in: | [show references] |