3 instanciateToc = function() { |
3 instanciateToc = function() { |
4 gToc = { |
4 gToc = { |
5 'position':[CY.WidgetPositionExt.TL, CY.WidgetPositionExt.TL], |
5 'position':[CY.WidgetPositionExt.TL, CY.WidgetPositionExt.TL], |
6 'tocId':CY.guid(), |
6 'tocId':CY.guid(), |
7 'tocTitleId':CY.guid(), |
7 'tocTitleId':CY.guid(), |
8 'closeBtnId':CY.guid() |
8 'closeBtnId':CY.guid(), |
|
9 'empty': false |
9 } ; |
10 } ; |
10 |
11 |
11 var overlayHtml = {}; |
12 var overlayHtml = {}; |
12 overlayHtml['headerContent'] = '<div id="' + gToc['tocId'] + '"><h3 id="' + gToc['tocTitleId'] + '"></h3>'; |
13 overlayHtml['headerContent'] = '<div id="' + gToc['tocId'] + '"><h3 id="' + gToc['tocTitleId'] + '"></h3>'; |
13 |
14 |
14 var toBeTOCced = getElementsByTagNames('h2,h3,h4,h5,h6', document.getElementById('maincontainer')); |
15 var toBeTOCced = getElementsByTagNames('h2,h3,h4,h5,h6', document.getElementById('maincontainer')); |
15 if (toBeTOCced.length < 2) return false; |
|
16 |
16 |
17 var content = document.createElement('div'); |
17 var content = document.createElement('div'); |
18 for (var i=0;i<toBeTOCced.length;i++) { |
18 if (toBeTOCced.length >= 2) { |
19 var tmp = document.createElement('a'); |
19 for (var i=0;i<toBeTOCced.length;i++) { |
20 tmp.innerHTML = toBeTOCced[i].innerHTML; |
20 var tmp = document.createElement('a'); |
21 tmp.className = 'page indent' + toBeTOCced[i].nodeName; |
21 tmp.innerHTML = toBeTOCced[i].innerHTML; |
22 content.appendChild(tmp); |
22 tmp.className = 'page indent' + toBeTOCced[i].nodeName; |
23 var headerId = toBeTOCced[i].id || 'link' + i; |
23 content.appendChild(tmp); |
24 tmp.href = '#' + headerId; |
24 var headerId = toBeTOCced[i].id || 'link' + i; |
25 toBeTOCced[i].id = headerId; |
25 tmp.href = '#' + headerId; |
26 } |
26 toBeTOCced[i].id = headerId; |
|
27 } |
|
28 } |
|
29 else { |
|
30 content.innerHTML = ''; |
|
31 gToc['empty'] = true; |
|
32 } |
27 overlayHtml['bodyContent'] = content.innerHTML; |
33 overlayHtml['bodyContent'] = content.innerHTML; |
28 |
34 |
29 var width = gLayout.getTopICommentsWidth() ; |
35 var width = gLayout.getTopICommentsWidth() ; |
30 |
36 |
31 var overlay = new CY.Overlay( { |
37 var overlay = new CY.Overlay( { |