source: admin/WebConsole/clases/jscripts/ArbolVistaXML.js @ dbc9bab

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since dbc9bab was 1b92629, checked in by ramon <ramongomez@…>, 16 years ago

Reorganización directorios OpenGNSys Admin.

git-svn-id: https://opengnsys.es/svn/trunk@455 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 22.0 KB
Line 
1// ************************************************************************************************
2//  Libreria de scripts de Javascript
3// Copyright 2003-2005 José Manuel Alonso. Todos los derechos reservados.
4// Fichero: ArbolVistaXML.js
5// Este fichero implementa las funciones javascript de la clase ArbolVistaXML.php
6// *************************************************************************************************
7var botonraton=null;                                    //  Botón presionado
8var currentNodo="";                                     // Nodo actual
9var currentpathimg="";                          //      Path por defecto de las imágenes de signo
10var gLiteralcolor;                                              // Color nodo vista para restablecer
11var gLiteralbackground;                 // Fondo color nodo vista para restablecer
12//________________________________________________________________________________________________________
13// definicion dela clase triada
14//________________________________________________________________________________________________________
15        function NodoVista(){
16                this.nivel=0;                                                                   // Profundidad del nodo
17                this.imgsigno=null;                                     // Objeto IMG (Imagen de signo de la celda vista) O SPAN si el nodo vista no tiene hijos
18                this.literal=null;                                                      // Objeto SPAN (Literal de la celda vista)
19
20                this.CeldaVista=null;                                   // El objeto TABLE que contiene la imagen de signo y el literal)
21                this.Nodo=null;                                                 // El nodo en si (Objeto TR que contiene el objeto TABLE celda vista final)
22                this.ArbolHijos=null;                                   // El arbol conteniendo todos los nodos hijos ( Si nulo no tiene hijos)(Objeto TR)
23                this.NodoPadre=null;                            // El nodo padre (Objeto TR que contiene el objeto TABLE celda vista final, del padre)
24                this.ArbolHijosNodoPadre=null;          // El arbol del padre conteniendo los nodos hijos(Objeto TR)
25                this.siguienteHermano=null;     // El nodo hermano siguiente ( Si nulo es el último hermano)(Objeto TR)
26                //____________________________________________________________________________
27                //     
28                //      Devuelve el estado del nodo 0: Contraido 1:Desplegado
29                //____________________________________________________________________________
30                this.estadoNodo= function(){
31                        var signoimg=this.imgsigno.getAttribute("value");
32                        var estado;
33                        switch(signoimg){
34                                case "menos_t" :
35                                case "menos_c" :
36                                        estado=1;
37                                        break;
38                                case "mas_t" :
39                                case "mas_c" :
40                                        estado=0;
41                                        break;
42                                default:
43                                        estado=-1;
44                        }
45                        return(estado);
46                }
47                //____________________________________________________________________________
48                //     
49                //      Devuelve el segundo dato de una cadena con formato xxxxx-xxx que es id del nodo vista
50                //____________________________________________________________________________
51                this.toma_identificador= function(){
52                        if(this.literal==null) return(null);
53                        var cadena=this.literal.getAttribute("id");
54                        var iditem=cadena.split("-") // Toma el identificador
55                        return(iditem[1]);
56                }
57                //____________________________________________________________________________
58                //     
59                //      Devuelve el primer dato de una cadena con formato xxxxx-xxx que es sufijo del nodo vista
60                //____________________________________________________________________________
61                this.toma_sufijo= function(){
62                        if(this.literal==null) return(null);
63                        var cadena=this.literal.getAttribute("id");
64                        var iditem=cadena.split("-") // Toma el identificador
65                        return(iditem[0]);
66                }
67                //____________________________________________________________________________
68                //     
69                //      Devuelve el literal de un nodo vista
70                //____________________________________________________________________________
71                this.toma_infonodo= function(){
72                        if(this.literal==null) return(null);
73                        return(this.literal.innerHTML);
74                }
75                //____________________________________________________________________________
76                //     
77                //      Devuelve el literal de un nodo vista
78                //____________________________________________________________________________
79                this.pone_infonodo= function(lit){
80                        this.literal.innerHTML=lit;
81                }               
82                //____________________________________________________________________________
83                //     
84                //       Devuelve true si el nodo tiene hijos,false en caso contrario
85                //____________________________________________________________________________
86                this.TieneHijos= function(){
87                        return(this.ArbolHijos!=null);
88                }
89                //____________________________________________________________________________
90                //     
91                //       Devuelve true si el nodo es el último, false en caso contrario
92                //____________________________________________________________________________
93                this.UltimoHermano= function(){
94                                        return(this.siguienteHermano==null);
95                }
96                //____________________________________________________________________________
97                //     
98                //       Devuelve el nodo vista padre
99                //____________________________________________________________________________
100                this.PapaNodo= function(){
101                        if(this.NodoPadre==null) return(null);
102                        var oTABLE=this.NodoPadre.getElementsByTagName('TABLE')[0];
103                        return(TomaDatosNodo(oTABLE));
104                }
105                // Fin de la clase
106}
107//________________________________________________________________________________________________________
108//     
109//      Devuelve un nodo vista
110//  Parametro:
111//              o: Objeto que puede ser la imagen de signo o el literal de una de las lineas del arbolVista
112//________________________________________________________________________________________________________
113        function TomaDatosNodo(o){
114                var nodo=new NodoVista();
115
116                while(o.tagName!="TABLE" )
117                        o=o.parentNode;
118                nodo.CeldaVista=o;     
119                var TAnchor=nodo.CeldaVista.getElementsByTagName('A');
120                if(TAnchor.length==2){ // Imagen de signo pulsable
121                        nodo.imgsigno=TAnchor[0].childNodes[0];
122                        nodo.literal=TAnchor[1].childNodes[0];
123                }
124                else{
125                        var TSpan=nodo.CeldaVista.getElementsByTagName('SPAN');
126                        nodo.imgsigno=TSpan[0].childNodes[0];
127                        nodo.literal=TAnchor[0].childNodes[0];
128                }
129        while(o.tagName!="TR" )
130                         o=o.parentNode;   
131                nodo.Nodo=o;
132               
133                while(o.tagName!="TABLE" )
134                        o=o.parentNode;
135                var Mnivel=o.getAttribute("id").split("-")
136                nodo.nivel=Mnivel[1]
137
138        while(o.tagName!="TR" )
139                         o=o.parentNode;   
140                nodo.ArbolHijosNodoPadre=o;
141               
142                if(parseInt(nodo.nivel)>0){
143                        o=o.previousSibling;
144                        while(o.nodeType!=1 )
145                                o=o.previousSibling
146                        nodo.NodoPadre=o;
147                }
148                else
149                        nodo.NodoPadre=null; // Es el primer nodo
150                var o=nodo.Nodo;
151                var auxsplit=o.getAttribute("id");
152                var idTR=auxsplit.split("-") [0];               
153        o=o.nextSibling
154        while(o!=null && o.nodeType!=1 )
155           o=o.nextSibling
156                if(o==null){ // Es el último hermano y no tiene hijos
157                        nodo.ArbolHijos=null;   
158                        nodo.siguienteHermano=null;
159                        return(nodo);
160                }
161                var auxsplit=o.getAttribute("id");
162                var idTRhijo=auxsplit.split("-") [0];
163                if(idTR==idTRhijo) { // El nodo no tiene hiijos y no es último hermano
164                        nodo.ArbolHijos=null;   
165                        nodo.siguienteHermano=o;
166                        return(nodo);
167                }
168                nodo.ArbolHijos=o;     
169                o=o.nextSibling
170        while(o!=null && o.nodeType!=1)
171           o=o.nextSibling
172                if(o==null){ // El nodo  tiene hijos y  es ultimo hermano
173                        nodo.siguienteHermano=null;
174                        return(nodo);
175                }
176                nodo.siguienteHermano=o; // El nodo  tiene hijos y  no es último hermano
177                return(nodo);
178        }
179//-----------------------------------------------------------------------------------------------------------------------
180//       Gestiona el despliegue y contracción de nodovs
181//-----------------------------------------------------------------------------------------------------------------------
182function clickNodo(nodov,pathimg){
183        var signoimg=nodov.imgsigno.getAttribute("value");
184                switch(signoimg){
185                        case "menos_t" :
186                                nodov.imgsigno.setAttribute("value","mas_t",null);
187                                nodov.imgsigno.setAttribute("src",pathimg+"/mas_t.gif",null);
188                                nodov.ArbolHijos.style.display="none"
189                                break;
190                        case "menos_c" :
191                                nodov.imgsigno.setAttribute("value","mas_c",null);
192                                nodov.imgsigno.setAttribute("src",pathimg+"/mas_c.gif",null);
193                                if (nodov.nivel==0)
194                                    nodov.imgsigno.setAttribute("src",pathimg+"/mas_root.gif",null);
195                                nodov.ArbolHijos.style.display="none"
196                                break;
197                        case "mas_t" :
198                                nodov.imgsigno.setAttribute("value","menos_t",null);
199                                nodov.imgsigno.setAttribute("src",pathimg+"/menos_t.gif",null);
200                                nodov.ArbolHijos.style.display="block"
201                                break;
202                        case "mas_c" :
203                nodov.imgsigno.setAttribute("value","menos_c",null);
204                                nodov.imgsigno.setAttribute("src",pathimg+"/menos_c.gif",null);
205                                if (nodov.nivel==0)
206                                    nodov.imgsigno.setAttribute("src",pathimg+"/menos_root.gif",null);
207                                nodov.ArbolHijos.style.display="block"
208                                break;
209                }
210}
211//-----------------------------------------------------------------------------------------------------------------------
212//       Gestiona el despliegue y contracción de nodos a través de la imagen del nodo
213//-----------------------------------------------------------------------------------------------------------------------
214function clickImagenSigno(oIMG,pathimg){
215        currentpathimg=pathimg;
216        var nodov=TomaDatosNodo(oIMG);
217        clickNodo(nodov,pathimg);
218        if (EsAncestro(nodov,currentNodo))
219                resalta(nodov);
220}
221//-----------------------------------------------------------------------------------------------------------------------
222//       Gestiona el despliegue y contracción de nodos a través del literal del nodo
223//-----------------------------------------------------------------------------------------------------------------------
224function clickLiteralNodo(oLIT,pathimg){
225        var nodov=TomaDatosNodo(oLIT);
226        resalta(nodov);
227        if(nodov.imgsigno==null) return;
228
229        if(pathimg==null){
230                var signoimg=nodov.imgsigno.getAttribute("src");
231                var p=signoimg.lastIndexOf("/");
232                var pathimg=signoimg.substring(0,p);
233                currentpathimg=pathimg;
234        }
235        var signoimg=nodov.imgsigno.getAttribute("value");
236        var signo=signoimg.split("_")   
237        if(botonraton==1){
238                        if (signo[0]=="mas"  ||         signo[0]=="menos" ) clickNodo(nodov,pathimg);
239        }
240        else{
241                        if (signo[0]=="mas" ) clickNodo(nodov,pathimg);
242        }
243}
244//-----------------------------------------------------------------------------------------------------------------------
245//       Resalta el nodo vista seleccionado y lo pone como nodo vista actual
246//-----------------------------------------------------------------------------------------------------------------------
247function resalta(nodov){
248        if(currentNodo==nodov) return;
249        if (currentNodo){
250                currentNodo.literal.style.color=gLiteralcolor;
251                currentNodo.literal.style.backgroundColor=gLiteralbackground;
252        }
253        gLiteralcolor=nodov.literal.style.color; // Guarda el color del nodo
254        gLiteralbackground=nodov.literal.style.backgroundColor; // Guarda el background del nodo       
255       
256        nodov.literal.style.color="#FFFFFF"; // Blanco
257        nodov.literal.style.backgroundColor="#0a266a"; // Azul marino
258        currentNodo=nodov;
259}
260//-----------------------------------------------------------------------------------------------------------------------
261//       Deja de resaltar un nodo vista
262//____________________________________________________________________________
263function desresalta(nodov){
264        nodov.literal.style.color=nodov.Literalcolor;
265        nodov.literal.style.backgroundColor=nodov.Literalbackground;
266}
267//-----------------------------------------------------------------------------------------------------------------------
268//       Averigua si el primer nodo vista es ancestro del segundo
269//____________________________________________________________________________
270function EsAncestro(nodoA,nodoH){
271        if(nodoH==null) return(false);
272        var NodoAncestro=nodoA.ArbolHijos;
273        var NodoHijo=nodoH.Nodo;
274        while(NodoHijo!=null){
275                if(NodoHijo==NodoAncestro) return(true);
276                NodoHijo=NodoHijo.parentNode;
277        }
278        return(false);
279}
280//-----------------------------------------------------------------------------------------------------------------------
281// Despliega un nivel el nodo indicado
282//-----------------------------------------------------------------------------------------------------------------------
283function despliega(o,pathimg){
284        var nodov=TomaDatosNodo(o);
285        clickNodo(nodov,pathimg);
286}
287//-----------------------------------------------------------------------------------------------------------------------
288// Despliega el nodo indicado ( desde la pagina
289//-----------------------------------------------------------------------------------------------------------------------
290function DespliegaNodo(lit,id){
291        var o=document.getElementById(lit+"-"+id);
292        if(o!=null){
293                var ancestro=   TomaDatosNodo(o);
294                resalta(ancestro);
295                while(ancestro!=null){
296                        if(ancestro.estadoNodo()==0) // Nodo contraido
297                                clickNodo(ancestro,currentpathimg);
298                         ancestro=ancestro.PapaNodo();
299                }
300        }
301}
302//____________________________________________________________________________
303//     
304//      Inserta un nodo en el árbol
305// Especificaciones:
306//              Los parámetros recibidos son:
307//                      - nodov: Nodo vista
308//                      - tablanodo: Tabla nodo generada para la nueva celda vista
309//____________________________________________________________________________
310function InsertaNodo(nodov,tablanodo){
311                var nwceldavista=CreaCeldaVista(nodov,tablanodo);
312                var nwTR = document.createElement('TR');
313                nwTR.id="TRNodo-0";
314                var nwTD = document.createElement('TD');
315                nwTD.innerHTML=nwceldavista;
316                nwTR.appendChild(nwTD);
317
318                if(!nodov.TieneHijos()){
319                        CreaNodoHijo(nodov);
320                        if(parseInt(nodov.nivel)==0){ // Nodo raiz
321                nodov.imgsigno.setAttribute("value","menos_c",null);
322                            nodov.imgsigno.setAttribute("src",currentpathimg+"/menos_root.gif",null);
323                        }
324                        else{
325                                if(nodov.UltimoHermano()){
326                                        nodov.imgsigno.setAttribute("value","menos_c",null);
327                                        nodov.imgsigno.setAttribute("src",currentpathimg+"/menos_c.gif",null);
328                                }
329                                else{
330                                        nodov.imgsigno.setAttribute("value","menos_t",null);
331                                        nodov.imgsigno.setAttribute("src",currentpathimg+"/menos_t.gif",null);
332                                }
333                        }
334                        var ATTonclick='clickImagenSigno(this,' + "'"+currentpathimg+"'"+','+nodov.nivel+');';
335                        nodov.imgsigno.setAttribute("onclick",ATTonclick,null);
336                        nodov.imgsigno.setAttribute("border","0",null);
337                        var oSPAN=nodov.imgsigno.parentNode;
338                        var htmlIMG=oSPAN.innerHTML;
339                        TDpadre=oSPAN.parentNode;
340                        TDpadre.innerHTML='<A href="#">'+htmlIMG+'</A>';       
341                }
342                var pivoteNodo=nodov.ArbolHijos;
343                var nodoTD = pivoteNodo.childNodes[0];;
344                var nodoTABLE=nodoTD.childNodes[0];
345                var nodoTBODY=nodoTABLE.childNodes[0];
346                var nodoTR=nodoTBODY.childNodes[0];
347                if(nodoTR!=null)
348                        nodoTBODY.insertBefore(nwTR,nodoTR);
349                else
350                        nodoTBODY.appendChild(nwTR);
351}
352//____________________________________________________________________________
353//     
354//      Monta y devuelve el código HTML de la estructura de una celda vista
355//              Los parámetros recibidos son:
356//                      - pivoteNodo: Nodo vista
357//                      - tablanodo: Tabla nodo generada para la nueva celda vista
358//____________________________________________________________________________
359function CreaCeldaVista(nodov,tablanodo){               
360                var nodoTD = document.createElement('TD');
361                nodoTD.innerHTML=tablanodo;
362                var nodoTABLE=nodoTD.childNodes[0];
363                var nodoTBODY=nodoTABLE.childNodes[0];
364                var nodoTBODYTR=nodoTBODY.childNodes[0];
365                var oIMG=nodoTBODYTR.getElementsByTagName('IMG')[0];
366                var HTMLinner=nodoTBODYTR.innerHTML;
367               
368                if(nodov.TieneHijos()){
369                        var  patron = new RegExp("nada_c","gi")
370                        HTMLinner=HTMLinner.replace(patron,"nada_t");
371                }               
372                else{
373                        var  patron = new RegExp("nada_t","gi")
374                        HTMLinner=HTMLinner.replace(patron,"nada_c");
375                }
376                var auxnodo=nodov;
377                var nwHTMLinner="";
378                var img="";
379                while(auxnodo!=null){
380                        (auxnodo.UltimoHermano())? img="nada.gif" :  img="nada_l.gif";
381                        nwHTMLinner='<TD width="3px"></TD><TD  width="16px"><IMG src="../images/signos/'+img+'" width="16px" height="16px" ></TD>'+nwHTMLinner;
382                        auxnodo=auxnodo.PapaNodo();
383                }
384                nwHTMLinner='<TABLE  border=0 cellspacing=0 cellpadding=0><TR height="16px">'+nwHTMLinner+HTMLinner+"</TR></TABLE>"; // Contenido de la tabla del nodo literal
385                return(nwHTMLinner);
386}               
387//____________________________________________________________________________
388//     
389//       Crea un nuevo nodo Hijo (objeto TABLE)
390//       Parámetros:
391//                      - nodov: Un nodo vista
392//____________________________________________________________________________
393function CreaNodoHijo(nodov){
394        var nivel=parseInt(nodov.nivel)+1;
395        var nTR=document.createElement('TR');
396        nTR.id="TRNodoHijo-0";
397        var nTD=document.createElement('TD');
398        nTD.innerHTML='<TABLE with="100%"id="tablanivel-'+nivel+'" border="0" cellspacing="0" cellpadding="0"><TBODY></TBODY></TABLE>';
399        nTR.appendChild(nTD);
400       
401        var pivoteNodo=nodov.Nodo.parentNode;
402        if(nodov.UltimoHermano()){
403                pivoteNodo.appendChild(nTR); // Para insertar al final
404                }
405        else{
406                pivoteNodo.insertBefore(nTR,nodov.siguienteHermano)
407        }
408        nodov.ArbolHijos=nTR;   
409}
410//____________________________________________________________________________
411//     
412//      Inserta un nodo en el árbol
413// Especificaciones:
414//              Los parámetros recibidos son:
415//                      - nodov: Nodo vista
416//____________________________________________________________________________
417function EliminaNodo(nodov){
418        var swuh=nodov.UltimoHermano();
419        var pn=nodov.Nodo.parentNode; // Nodo padre
420        var papa=nodov.PapaNodo(); // Nodo vista padre
421
422        if(nodov.TieneHijos())
423                pn.removeChild(nodov.ArbolHijos); // Elimina arbol hijo
424        pn.removeChild(nodov.Nodo);     // Elimina Nodo
425
426        var antHermano=pn.lastChild
427        if(antHermano==null){ // El nodo padre no tiene más hijos
428                        var pn=papa.ArbolHijos.parentNode; // Nodo padre
429                        pn.removeChild(papa.ArbolHijos); // Elimina arbol hijo
430                        ChgSignoPadreEliminaNodo(papa.imgsigno);
431        }
432        else{
433                if(swuh){ // Si era el último hermano ...
434                        var auxsplit=antHermano.getAttribute("id");
435                        var idTR=auxsplit.split("-") [0];
436                        if(idTR=="TRNodoHijo"){
437                                antHermano=antHermano.previousSibling;
438                                while(antHermano.nodeType!=1 )
439                                        antHermano=antHermano.previousSibling
440                                var TAnchor=antHermano.getElementsByTagName('A');
441                                if(TAnchor.length==2) // Imagen de signo pulsable
442                                        var oIMG=TAnchor[0].childNodes[0];
443                        }
444                        else{
445                                var TSpan=antHermano.getElementsByTagName('SPAN');
446                                var oIMG=TSpan[0].childNodes[0];
447                        }       
448                        var nh=TomaDatosNodo(oIMG);
449                        ChgSignoEliminaNodo(oIMG);
450                        if(nh.TieneHijos())
451                                ChgSignoNivel(nh.ArbolHijos,nh.nivel);
452                }
453        }
454}
455//-----------------------------------------------------------------------------------------------------------------------
456//       Cambia la imagen de signo del hermano anterior de un nodo eliminado
457//-----------------------------------------------------------------------------------------------------------------------
458function ChgSignoEliminaNodo(imgsigno){
459        var signoimg=imgsigno.getAttribute("value");
460                switch(signoimg){
461                        case "menos_t" :
462                                imgsigno.setAttribute("value","menos_c",null);
463                                imgsigno.setAttribute("src",currentpathimg+"/menos_c.gif",null);
464                                break;
465                        case "mas_t" :
466                                imgsigno.setAttribute("value","mas_c",null);
467                                imgsigno.setAttribute("src",currentpathimg+"/mas_c.gif",null);
468                                break;
469                        case "nada_t" :
470                imgsigno.setAttribute("value","nada_c",null);
471                                imgsigno.setAttribute("src",currentpathimg+"/nada_c.gif",null);
472                                break;
473                }
474}
475//-----------------------------------------------------------------------------------------------------------------------
476//       Cambia la imagen de signo del nodo padre de un nodo eliminado ( unico hijo)
477//-----------------------------------------------------------------------------------------------------------------------
478function ChgSignoPadreEliminaNodo(imgsigno){
479        var signoimg=imgsigno.getAttribute("value");
480                switch(signoimg){
481                        case "menos_t" :
482                                imgsigno.setAttribute("value","nada_t",null);
483                                imgsigno.setAttribute("src",currentpathimg+"/nada_t.gif",null);
484                                QuitaANCHOR(imgsigno);
485                                break;
486                        case "menos_c" :
487                                imgsigno.setAttribute("value","nada_c",null);
488                                imgsigno.setAttribute("src",currentpathimg+"/nada_c.gif",null);
489                                QuitaANCHOR(imgsigno);
490                                break;
491                        case "mas_t" :
492                                imgsigno.setAttribute("value","nada_t",null);
493                                imgsigno.setAttribute("src",currentpathimg+"/nada_t.gif",null);
494                                QuitaANCHOR(imgsigno);
495                                break;
496                        case "mas_c" :
497                                imgsigno.setAttribute("value","nada_c",null);
498                                imgsigno.setAttribute("src",currentpathimg+"/nada_c.gif",null);
499                                QuitaANCHOR(imgsigno);
500                                break;
501                }
502}
503//-----------------------------------------------------------------------------------------------------------------------
504//       Cambia la imagen de un determinado nivel
505//-----------------------------------------------------------------------------------------------------------------------
506function QuitaANCHOR(oIMG){
507        var TAnchor=oIMG.parentNode;
508        var oHTML=TAnchor.innerHTML;
509        var oTD=TAnchor.parentNode;
510        oTD.innerHTML="<SPAN>"+oHTML+"</SPAN>";
511}
512//-----------------------------------------------------------------------------------------------------------------------
513//       Cambia la imagen de un determinado nivel
514//-----------------------------------------------------------------------------------------------------------------------
515function ChgSignoNivel(arbolv,n){
516        if(arbolv==null) return
517        var nodoTD =arbolv.childNodes[0];
518        var nodoTABLE=nodoTD.childNodes[0];
519        var nodoTBODY=nodoTABLE.childNodes[0];
520        var oTRs=nodoTBODY.childNodes;
521        for(var i=0;i<oTRs.length;i++){
522                var auxsplit=oTRs[i].getAttribute("id");
523                var idTR=auxsplit.split("-") [0];
524                if(idTR=="TRNodoHijo"){
525                        ChgSignoNivel(oTRs[i],n)
526                }
527                else{
528                        var oTABLE=oTRs[i].getElementsByTagName('TABLE');
529                        var oIMGs=oTABLE[0].getElementsByTagName('IMG');
530                        oIMGs[n].setAttribute("src",currentpathimg+"/nada.gif",null);
531                }
532        }
533}
534//____________________________________________________________________________
535//
536//      Se ejecuta cada vez que se mueve el puntero del ratón. Se usa para desmarca
537//      cualquier item de menu contextual que estuviese activo
538//____________________________________________________________________________
539function click_de_raton_prov(e){
540        if(IE){
541                botonraton=event.button
542                event.returnValue=true;
543                return;
544        }
545        if(NS){
546                botonraton=e.which;
547                e.returnValue=true;
548                return;
549        }
550}
551//____________________________________________________________________________
552//
553//      Recupera el navegador utilizado
554//____________________________________________________________________________
555var IE=(navigator.appName=="Microsoft Internet Explorer");
556var NS=(navigator.appName=="Netscape");
557//____________________________________________________________________________
558//
559//      Redirecciona el evento onmousedown a la función de usuario especificada.
560//____________________________________________________________________________
561document.onmousedown = click_de_raton_prov; // Redefine el evento onmousedown
562 if(NS) document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)
563
564
Note: See TracBrowser for help on using the repository browser.