mirror of
https://github.com/minetest/irrlicht.git
synced 2024-11-17 07:50:24 +01:00
43 lines
1.3 KiB
JavaScript
43 lines
1.3 KiB
JavaScript
|
var showTriggers = new Array();
|
||
|
|
||
|
function registerShow(sectId,showFunc) {
|
||
|
showTriggers[sectId] = showFunc;
|
||
|
}
|
||
|
|
||
|
function hasClass(ele,cls) {
|
||
|
return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
|
||
|
}
|
||
|
|
||
|
function addClass(ele,cls) {
|
||
|
if (!this.hasClass(ele,cls)) ele.className += " "+cls;
|
||
|
}
|
||
|
|
||
|
function removeClass(ele,cls) {
|
||
|
if (hasClass(ele,cls)) {
|
||
|
var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
|
||
|
ele.className=ele.className.replace(reg,' ');
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function toggleVisibility(linkObj) {
|
||
|
var base = linkObj.getAttribute('id');
|
||
|
var summary = document.getElementById(base + '-summary');
|
||
|
var content = document.getElementById(base + '-content');
|
||
|
var trigger = document.getElementById(base + '-trigger');
|
||
|
if ( hasClass(linkObj,'closed') ) {
|
||
|
summary.style.display = 'none';
|
||
|
content.style.display = 'block';
|
||
|
trigger.src = trigger.src.substring(0,trigger.src.length-10)+'open.png';
|
||
|
removeClass(linkObj,'closed');
|
||
|
addClass(linkObj,'opened');
|
||
|
if (showTriggers[base]) { showTriggers[base](); }
|
||
|
} else if ( hasClass(linkObj,'opened') ) {
|
||
|
summary.style.display = 'block';
|
||
|
content.style.display = 'none';
|
||
|
trigger.src = trigger.src.substring(0,trigger.src.length-8)+'closed.png';
|
||
|
removeClass(linkObj,'opened');
|
||
|
addClass(linkObj,'closed');
|
||
|
}
|
||
|
return false;
|
||
|
}
|