Verzeichnisstruktur phpBB-3.3.15
- Veröffentlicht
- 28.08.2024
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
Parser.js
01 matches.forEach(function(m)
02 {
03 // Test whether this is an end tag
04 var isEnd = (text[m[0][1] + 1] === '/');
05
06 var pos = m[0][1],
07 len = m[0][0].length,
08 elName = m[2 - isEnd][0].toLowerCase();
09
10 // Use the element's alias if applicable, or the name of the element (with the
11 // configured prefix) otherwise
12 var tagName = (config.aliases && config.aliases[elName] && config.aliases[elName][''])
13 ? config.aliases[elName]['']
14 : config.prefix + ':' + elName;
15
16 if (isEnd)
17 {
18 addEndTag(tagName, pos, len);
19
20 return;
21 }
22
23 // Test whether it's a self-closing tag or a start tag.
24 //
25 // A self-closing tag will become one start tag consuming all of the text followed by a
26 // 0-width end tag. Alternatively, it could be replaced by a pair of 0-width tags plus
27 // an ignore tag to prevent the text in between from being output
28 var tag = (/(<\S+|['"\s])\/>$/.test(m[0][0]))
29 ? addTagPair(tagName, pos, len, pos + len, 0)
30 : addStartTag(tagName, pos, len);
31
32 captureAttributes(tag, elName, m[3][0]);
33 });
34
35 /**
36 * Capture all attributes in given string
37 *
38 * @param {!Tag} tag Target tag
39 * @param {string} elName Name of the HTML element
40 * @param {string} str String containing the attribute declarations
41 */
42 function captureAttributes(tag, elName, str)
43 {
44 var regexp = /([a-z][-a-z0-9]*)(?:\s*=\s*("[^"]*"|'[^']*'|[^\s"'=<>`]+))?/gi,
45 attrName,
46 attrValue,
47 m;
48
49 while (m = regexp.exec(str))
50 {
51 /**
52 * If there's no value, it's a boolean attribute and we generate a value equal
53 * to the attribute's name, lowercased
54 *
55 * @link http://www.w3.org/html/wg/drafts/html/master/single-page.html#boolean-attributes
56 */
57 attrName = m[1].toLowerCase();
58 attrValue = (typeof m[2] !== 'undefined') ? m[2] : attrName;
59
60 // Use the attribute's alias if applicable
61 if (HINT.HTMLELEMENTS_HAS_ALIASES && config.aliases && config.aliases[elName] && config.aliases[elName][attrName])
62 {
63 attrName = config.aliases[elName][attrName];
64 }
65
66 // Remove quotes around the value
67 if (/^["']/.test(attrValue))
68 {
69 attrValue = attrValue.substring(1, attrValue.length - 1);
70 }
71
72 tag.setAttribute(attrName, html_entity_decode(attrValue));
73 }
74 }