1: window.onload = function() {
2: var omap = {}; //eq = new Object();
3: //var omap = { select:'選択表示にする方法',etc:'その他' };
4: var divelements = document.getElementsByTagName("div");
5: for(var i=0; divelements.length>i; i++) {
6: var classval = divelements[i].getAttribute("class");
7: if (classval != null){
8: var classvs = classval.split(" ");
9: for(var c=0; classvs.length>c; c++) {
10: if (classvs[c] != null){
11: if (omap[classvs[c]] == undefined) omap[classvs[c]] = classvs[c];
12: }
13: }
14: }
15: }
16:
17: var emtp = document.createElement("p");
18: emtp.setAttribute("class","btn");
19: for(var key in omap){
20: var textnd = document.createTextNode(omap[key]);
21: var textndsp = document.createTextNode(" ");
22: var emtspan = document.createElement("span");
23: emtspan.appendChild(textnd);
24: emtspan.setAttribute("onclick","xdisp('"+key+"')");
25: emtp.appendChild(emtspan);
26: emtp.appendChild(textndsp);
27: }
28: var textnd = document.createTextNode("全部表示");
29: var emtspan = document.createElement("span");
30: emtspan.appendChild(textnd);
31: emtspan.setAttribute("onclick","alldisp()");
32: emtp.appendChild(emtspan);
33:
34: var emth1s = document.getElementsByTagName("h1");
35: var nextemt = emth1s[0].nextSibling;
36: emth1s[0].parentNode.insertBefore(emtp,nextemt);
37: }
前半はページ中のdiv要素のclass属性を集めています。
1: window.onload = function() {
2: var omap = {}; //var omap = new Object();
3: //var omap = { select:'選択表示にする方法',etc:'その他' };
4: var divelements = document.getElementsByTagName("div");
5: for(var i=0; divelements.length>i; i++) {
6: var classval = divelements[i].getAttribute("class");
7: if (classval != null){
8: var classvs = classval.split(" ");
9: for(var c=0; classvs.length>c; c++) {
10: if (classvs[c] != null){
11: if (omap[classvs[c]] == undefined) omap[classvs[c]] = classvs[c];
12: }
13: }
14: }
15: }
後半は要素を作ってボタンにします。
17: var emtp = document.createElement("p");
18: emtp.setAttribute("class","btn");
19: for(var key in omap){
20: var textnd = document.createTextNode(omap[key]);
21: var textndsp = document.createTextNode(" ");
22: var emtspan = document.createElement("span");
23: emtspan.appendChild(textnd);
24: emtspan.setAttribute("onclick","xdisp('"+key+"')");
25: emtp.appendChild(emtspan);
26: emtp.appendChild(textndsp);
27: }
28: var textnd = document.createTextNode("全部表示");
29: var emtspan = document.createElement("span");
30: emtspan.appendChild(textnd);
31: emtspan.setAttribute("onclick","alldisp()");
32: emtp.appendChild(emtspan);
33:
34: var emth1s = document.getElementsByTagName("h1");
35: var nextemt = emth1s[0].nextSibling;
36: emth1s[0].parentNode.insertBefore(emtp,nextemt);
37: }