현재 탐색을 위해 아래 스크립트를 사용하고 클릭시 확장하는 프로젝트에 참여하고 있습니다. 그러나 문제는 탐색이 붕괴되지 않으면 열어두기를 원한다는 것입니다.
하지만 현재 직면하고있는 문제는 클릭하면 펼쳐지고 페이지 중 하나를 클릭하면 다시 접히는 것입니다. 확장 된 페이지 중 하나를 클릭하면 열려 있기를 원합니다.
<li class="group"><a href="#" title="." onClick="this.parentNode.className
= (this.parentNode.className=='groupOpen') ? "group" :
"groupOpen"; return false;">
누군가를 돕기 위해 프로젝트 파일을 제공 할 수 있습니다. 그것은 나를 미치게 만든다.
동적 JS 파일
function makeTreesC() {
// We don't actually need createElement, but we do
// need good DOM support, so this is a good check.
if (!document.createElement) return;
uls = document.getElementsByTagName("ul");
for (uli=0;uli<uls.length;uli++) {
ul = uls[uli];
if (ul.nodeName == "UL" && ul.className == "nav") {
processULELC(ul);
}
}
}
function processULELC(ul) {
if (!ul.childNodes || ul.childNodes.length == 0) return;
// Iterate LIs
for (var itemi=0;itemi<ul.childNodes.length;itemi++) {
var item = ul.childNodes[itemi];
if (item.nodeName == "LI") {
// Iterate things in this LI
var a;
var subul;
subul = "";
for (var sitemi=0;sitemi<item.childNodes.length;sitemi++) {
var sitem = item.childNodes[sitemi];
switch (sitem.nodeName) {
case "A": a = sitem; break;
case "UL": subul = sitem;
processULELC(subul);
break;
}
}
if (subul) {
associateELC(a,subul);
} else {
// Sections don't have links, so check for those and
// double-check for sections before assuming it's a
// link.
if(a) {
if(a.parentNode.className.indexOf('section') == -1) {
a.parentNode.className = "link";
}
}
}
}
}
}
function associateELC(a,ul) {
/* default to closed */
if (a.parentNode.className.indexOf('groupOpen') == -1)
a.parentNode.className = 'group';
a.onclick = function () {
this.parentNode.className = (this.parentNode.className=='groupOpen') ?
"group" : "groupOpen";
return false;
}
}
function expandAll() {
// We don't actually need createElement, but we do
// need good DOM support, so this is a good check.
if (!document.createElement) return;
listItems = document.getElementsByTagName("li");
for (i=0;i<listItems.length;i++) {
it = listItems[i];
if (it.nodeName == "LI" && it.className == "group") {
it.className = "groupOpen"
}
}
}
function collapseAll() {
// We don't actually need createElement, but we do
// need good DOM support, so this is a good check.
if (!document.createElement) return;
listItems = document.getElementsByTagName("li");
for (i=0;i<listItems.length;i++) {
it = listItems[i];
if (it.nodeName == "LI" && it.className == "groupOpen") {
it.className = "group"
}
}
}
/* Utility functions */
function addEvent(obj, evType, fn){
/* adds an eventListener for browsers which support it
Written by Scott Andrew: nice one, Scott */
if (obj.addEventListener){
obj.addEventListener(evType, fn, true);
return true;
} else if (obj.attachEvent){
var r = obj.attachEvent("on"+evType, fn);
return r;
} else {
return false;
}
}
나는 JS가 싫어서 화가났다. Plz, 도와 줘. 파일을 프로파일 링 할 수 있습니다. 내부 프로젝트이므로 비공개이어야합니다.