|
|
|
| 01 var getdd = document.getElementById('slide').getElementsByTagName("DD");
02 var getdt = document.getElementById('slide').getElementsByTagName("DT");
03 var getMenu = document.getElementById('odnaknopka').getElementsByTagName("DT");
04 for (var x=0; x<getMenu.length; x++) {
05 getMenu[x].onclick=function() {
06 if (this.id == "menu1" && document.getElementById('smenu').className=='') {
07 expand (0,document.getElementById('slide').offsetHeight,'smenu')
08 document.getElementById('smenu').className = "clicked";
09 this.className="expand";
10 }
11 else {
12 for (var q=0; q<getdd.length; q++) {
13 eNext = getdd[q].firstChild;
14 while (eNext.nodeType!=1) {eNext = eNext.nextSibling;}
15 ulHeight = eNext.offsetHeight;
16 if (getdd[q].offsetHeight > 0) {
17 getdd[q].className='';
18 getdt[q+1].className='';
19 contract (ulHeight,0,getdd[q].id)
20 }
21 }
22 document.getElementById('slide').style.position = "absolute";
23 document.getElementById('smenu').style.overflow = "visible";
24 contract (document.getElementById('slide').offsetHeight,0,'smenu')
25 document.getElementById('smenu').className = '';
26 this.className='';
27 }
28 }
29 }
30
31
32 for (var i=0; i<getdt.length; i++) {
33 getdt[i].onclick=function() {
34 document.getElementById('slide').style.position = "relative";
35 document.getElementById('smenu').style.overflow = "visible";
36 if (this.id.indexOf('item') != -1) {
37 for (var z=0; z<getdd.length; z++) {
38 if (getdd[z].id.indexOf(this.id) !=-1 && getdd[z].className=='') {
39 eNext = getdd[z].firstChild;
40 while (eNext.nodeType!=1) {eNext = eNext.nextSibling;}
41 ulHeight = eNext.offsetHeight;
42 expand (30,ulHeight,getdd[z].id)
43 }
44 else {
45 eNext = getdd[z].firstChild;
46 while (eNext.nodeType!=1) {eNext = eNext.nextSibling;}
47 ulHeight = eNext.offsetHeight;
48 if (getdd[z].offsetHeight > 0) {
49 contract (ulHeight,0,getdd[z].id)
50 }
51 }
52 if (getdd[z].id.indexOf(this.id) !=-1 && getdd[z].className=='') {
53 getdd[z].className='selected';
54 this.className='slide';
55 }
56 else {
57 getdd[z].className='';
58 ePrevious = getdd[z].previousSibling;
59 while (ePrevious.nodeType!=1) {ePrevious = ePrevious.previousSibling;}
60 ePrevious .className='';
61 }
62 }
63 }
64 }
65 }
66 function expand (cY, fY, subY) {
67 cY=cY+2;
68 if (cY <= fY) {
69 document.getElementById(subY).style.height = cY + "px";
70 setTimeout ("expand("+cY+","+fY+",'"+subY+"')", 10);
71 }
72 }
73
74 function contract (cZ, fZ, subZ) {
75 cZ=cZ-2;
76 if (cZ >= fZ) {
77 document.getElementById(subZ).style.height = cZ + "px";
78 setTimeout ("contract("+cZ+","+fZ+",'"+subZ+"')", 10);
79 }
80 } | |
|
|
|
|
|
|
|
для: pernik
(14.02.2011 в 03:31)
| | jQuery это всего лишь удобная оболочка, написанная на JavaScript, и работающая в JavaScript.
Ответ на Ваш вопрос - Да. | |
|
|
|