annotate virt/statics/script.js @ 19:1e79ce3ff5f5
tip
Simplify and cut some non-working resource paths
author |
Chris Cannam |
date |
Wed, 08 Nov 2017 15:27:23 +0000 |
parents |
1e44d666ced1 |
children |
|
rev |
line source |
Chris@0
|
1 function init() {
|
Chris@0
|
2 init_long_literals();
|
Chris@0
|
3 }
|
Chris@0
|
4
|
Chris@0
|
5 var long_literal_counter = 0;
|
Chris@0
|
6 var long_literal_spans = {};
|
Chris@0
|
7 var long_literal_texts = {};
|
Chris@0
|
8 function init_long_literals() {
|
Chris@0
|
9 var spans = document.getElementsByTagName('span');
|
Chris@0
|
10 for (i = 0; i < spans.length; i++) {
|
Chris@0
|
11 if (spans[i].className != 'literal') continue;
|
Chris@0
|
12 var span = spans[i];
|
Chris@0
|
13 var textNode = span.firstChild;
|
Chris@0
|
14 var text = textNode.data;
|
Chris@0
|
15 if (text.length < 300) continue;
|
Chris@0
|
16 var match = text.match(/([^\0]{150}[^\0]*? )([^\0]*)/);
|
Chris@0
|
17 if (!match) continue;
|
Chris@0
|
18 span.insertBefore(document.createTextNode(match[1] + ' ... '), span.firstChild);
|
Chris@0
|
19 span.removeChild(textNode);
|
Chris@0
|
20 var link = document.createElement('a');
|
Chris@0
|
21 link.href = 'javascript:expand(' + long_literal_counter + ');';
|
Chris@0
|
22 link.appendChild(document.createTextNode('\u00BBmore\u00BB'));
|
Chris@0
|
23 link.className = 'expander';
|
Chris@0
|
24 span.insertBefore(link, span.firstChild.nextSibling);
|
Chris@0
|
25 long_literal_spans[long_literal_counter] = span;
|
Chris@0
|
26 long_literal_texts[long_literal_counter] = textNode;
|
Chris@0
|
27 long_literal_counter = long_literal_counter + 1;
|
Chris@0
|
28 }
|
Chris@0
|
29 }
|
Chris@0
|
30
|
Chris@0
|
31 function expand(i) {
|
Chris@0
|
32 var span = long_literal_spans[i];
|
Chris@0
|
33 span.removeChild(span.firstChild);
|
Chris@0
|
34 span.removeChild(span.firstChild);
|
Chris@0
|
35 span.insertBefore(long_literal_texts[i], span.firstChild);
|
Chris@0
|
36 } |