Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107

    [JS] Help per una modifica a una classe

    Salve a tutti, premetto che non credo sia una cosa difficile.
    Questa classe gestisce una dissolvenza.

    Ho associato questa classe al click su una <TD>

    Cosa vorrei che faccia
    Vorrei poter gestire anche la dissolvenza all'opposto.
    di default fa da 100 a 60 opacity (esempio)
    Vorrei impostarla per fare da 60 a 100

    codice:
    fade = {
        step: 2,
        speed : 0.1,
        finalOpacity : 80,
        currentOpacity : 100,
        elID : null,
        init : function(el) {
            fade.elID = el;
          if(arguments.length>1)
          {
             fade.currentOpacity=arguments[1];
             fade.finalOpacity=arguments[2];
             fade.speed=arguments[3];
             if(fade.currentOpacity<fade.finalOpacity&&fade.step>0)fade.step*=-1;
          }
          if(arguments.length>4)fade.step=arguments[4];
            if (!document.getElementById(el)) return;
          fade.setOP(fade.currentOpacity);
            fadeInterval = setInterval('fade.doFade()',fade.speed);
        },
        setOP : function(newOpacity) {
          obj = document.getElementById(fade.elID);
          if(newOpacity<10)newOpacity='0'+newOpacity;
            if(newOpacity<100)obj.style.opacity = "."+(newOpacity);else obj.style.opacity = 1;
            obj.style.filter = "alpha(opacity="+newOpacity+")";
            fade.currentOpacity = newOpacity;
        },
        doFade : function(obj) {        
            if (fade.step>0&&(fade.currentOpacity-fade.step>fade.finalOpacity)) {
              fade.setOP(fade.currentOpacity - fade.step);
            }
            else if (fade.step<0&&(fade.currentOpacity-fade.step<fade.finalOpacity)) {
              fade.setOP(fade.currentOpacity - fade.step);
            }
          else {
              fade.setOP(fade.finalOpacity);
                clearInterval(fadeInterval);
            }
        }
    }
    codice:
    <td bgcolor="#FFFFCC" id="steppo1" style="cursor:pointer;" 
    onClick="fade.init('steppo1','100','60','20','2');">STEP 1</td>
    Non riesco a comprenderene bene il funzionamento.. mi date una mano x la modifica?
    Guybrush Threepwood

  2. #2
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107
    Sono riuscito a sistemarla.. PERO'...

    se la inserisco in un loop, lavora solamente sull'ultimo elemento. Secondo voi non riesce a gestire + esecuzioni contemporanee?
    Guybrush Threepwood

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.