Visualizzazione dei risultati da 1 a 3 su 3

Discussione: semplificare con array

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    3

    semplificare con array

    ciao a tutti.
    sto lavorando a questo sito http://www.noreal.it/temp

    ed essendo completamente ignorante per quanto riguarda il JS ho scritto queste funzioni, orribili tanto quanto efficenti, per le linguette di selezione della sezione. (essendo temporaneo per ora puntano tutte a home.htm)

    qualcuno potrebbe aiutarmi a semplificarle? magari usando gli array?

    ecco il codice

    codice:
    <script language="JavaScript">
    <!--
    function MM_preloadImages() { //v3.0
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    }
    
    function MM_findObj(n, d) { //v3.0
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
    }
    
    function MM_swapImage() { //v3.0
      var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
       if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    }
    
    function MM_swapImgRestore() { //v3.0
      var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
    }
    
    var on1 = 0;
    var on2 = 0;
    var on3 = 0;
    var on4 = 0;
    var on5 = 0;
    var on6 = 0;
    var on7 = 0;
    
    function abbassa1() {
      if (on1==0)
        MM_swapImage('roll_1','','images/fondo_top_2_1.jpg');
    }
    function alza1() {
      MM_swapImage('roll_1','','images/fondo_top_2_1_on.jpg');
      on1=1;
      on2=0;
      on3=0;
      on4=0;
      on5=0;
      on6=0;
      on7=0;
    }
    
    function abbassa2() {
      if (on2==0)
        MM_swapImage('roll_2','','images/fondo_top_2_2.jpg');
    
    }
    function alza2() {
      MM_swapImage('roll_2','','images/fondo_top_2_2_on.jpg');
      on1=0;
      on2=1;
      on3=0;
      on4=0;
      on5=0;
      on6=0;
      on7=0;
    }
    
    function abbassa3() {
      if (on3==0)
        MM_swapImage('roll_3','','images/fondo_top_2_3.jpg');
    
    }
    function alza3() {
      MM_swapImage('roll_2','','images/fondo_top_2_3_on.jpg');
      on1=0;
      on2=0;
      on3=1;
      on4=0;
      on5=0;
      on6=0;
      on7=0;
    }
    
    function abbassa4() {
      if (on4==0)
        MM_swapImage('roll_4','','images/fondo_top_2_4.jpg');
    }
    function alza4() {
      MM_swapImage('roll_4','','images/fondo_top_2_4_on.jpg');
      on1=0;
      on2=0;
      on3=0;
      on4=1;
      on5=0;
      on6=0;
      on7=0;
    }
    
    function abbassa5() {
      if (on5==0)
        MM_swapImage('roll_5','','images/fondo_top_2_5.jpg');
    }
    function alza5() {
      MM_swapImage('roll_5','','images/fondo_top_2_5_on.jpg');
      on1=0;
      on2=0;
      on3=0;
      on4=0;
      on5=1;
      on6=0;
      on7=0;
    }
    
    function abbassa6() {
      if (on6==0)
        MM_swapImage('roll_6','','images/fondo_top_2_6.jpg');
    }
    function alza5() {
      MM_swapImage('roll_6','','images/fondo_top_2_6_on.jpg');
      on1=0;
      on2=0;
      on3=0;
      on4=0;
      on5=0;
      on6=1;
      on7=0;
    }
    
    function abbassa7() {
      if (on7==0)
        MM_swapImage('roll_7','','images/fondo_top_2_7.jpg');
    }
    function alza7() {
      MM_swapImage('roll_7','','images/fondo_top_2_7_on.jpg');
      on1=0;
      on2=0;
      on3=0;
      on4=0;
      on5=0;
      on6=0;
      on7=1;
    }
    //-->
    codice:
    	<div id="top_2_1">
    		<a href="home.htm" target="mainFrame" onMouseOver="MM_swapImage('roll_1','','images/fondo_top_2_1_on.jpg')" onMouseOut="abbassa1()" onClick="alza1();abbassa2();abbassa3();abbassa4();abbassa5();abbassa6();abbassa7()">
    		[img]images/fondo_top_2_1.jpg[/img]
    		</a>
    	</div>
    	<div id="top_2_2">
    		<a href="home.htm" target="mainFrame" onMouseOver="MM_swapImage('roll_2','','images/fondo_top_2_2_on.jpg')" onMouseOut="abbassa2()" onClick="alza2();abbassa1();abbassa3();abbassa4();abbassa5();abbassa6();abbassa7()">
    		[img]images/fondo_top_2_2.jpg[/img]
    		</a>
    	</div>
    
    
    eccetera...

    grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    3
    ehm... un piccolo up

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    3
    vabeh dopo un po' di scleri me la sono risolta.

    la posto che magari può servire a qlcunaltro


    codice:
    acceso = new Array();
    acceso [1]=0;
    acceso [2]=0;
    acceso [3]=0;
    acceso [4]=0;
    acceso [5]=0;
    acceso [6]=0;
    acceso [7]=0;
    
    function abbassa(abb) {
      if (acceso [abb] == 0)
        MM_swapImage('roll_'+abb,'','images/fondo_top_2_'+abb+'.jpg');
    }
    function alza(alz) {
      MM_swapImage('roll_'+alz,'','images/fondo_top_2_'+alz+'_on.jpg');
      acceso [alz]=1;
    }
    function reset(PAR) {
      for (i=0; i<8; i++) {
      if (i!=PAR) {
      acceso [i] = 0;
      abbassa(i);
       }
      }
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.