Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Vorrei capirne il funzionamento... Grazie

    Salve, un saluto a tutto lo staff...

    Ho da poco installata una skins nel mio forum, ed ho notato che utilizza molto il javascript, ma tra i vari effetti vi è uno molto particolare ( un popup di base ) di cui ho cercato di capirne il funzionamento e cercato di replicarne l'effetto in un'altra pagina html creata ad hoc senza però successo..

    scrivo qui affinche qualcuno di voi esperti, essendo io un nubbie riesca a farmi capire dove sbagli..

    i file usati sono tre ( un .js un .css ed un html ) scaricabili qui ( da quel poco che so penso siano questi i file incriminati nella skin che permettano tale effetto )

    1) itab_global.js

    contenente diverse function.. quella inizialmente interessata penso sia questa :

    Codice PHP:
    function itab_about_init()
    {
        
    itab_about_create_box(document.getElementsByTagName('body')[0]);

        var 
    = new Array('a''span');
        for (var 
    n=0n<z.lengthn++)
        {
            var 
    document.getElementsByTagName(z[n]);
            var 
    'rel';
            var 
    c;

            for (var 
    i=0i<a.length-1i++)
            {
                
    a[i];
                if (
    c.getAttribute(b))
                {
                    if (
    c.getAttribute(b).toLowerCase() == 'itab-about')
                    {
                        
    c.onclick itab_about_show;
                        try
                        {
                            
    c.style.cursor 'pointer';
                        }

                        catch(
    er)
                        {
                            
    c.style.cursor 'hand';
                        }
                    }
                }
            }
        }

        
    itab_about_loaded true;

    Poi un css_7.css avente :

    Codice PHP:
    #itab_about_bg
    {
        
    positionabsolute;
        
    top0px;
        
    left0px;
        
    z-index1000;
        
    width100%;
        
    height100%;
        
    background-color#000000;
        
    margin0;
        
    padding0;
        
    filteralpha(opacity=0);
        -
    moz-opacity0.0;
        
    opacity0.0;
    }

    #itab_about_wrapper etc etc 
    ed una pagina html creata cosi :

    Codice PHP:
    <head>
    <
    meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <
    style type="text/css" src="/css_7.css" media="all"></style
    <
    script type='text/javascript' src='itab_global.js'></script>
    <title>Documento senza titolo</title>
    </head>

    <body>
    <div align='center' class='copyright'>
    <span rel='itab-about'>
        [img]itab_about_logo.gif[/img]
      </span>
    </div>
    </body>
    </html> 
    se non ho errato qualcosa dovrei aver richiamato le function nel file itab_global.js tramite :

    <script type='text/javascript' src='itab_global.js'></script>

    ma il punto è che non riconosce nel tag <span la rel='itab-about'

    cosa che dovrebbe fare la function itab_about_init() o no?

    oppure se la riconosce non funziona...

    dove sbaglio?

    P.S.= per vedere l'effetto potete andare qui e cliccare sull'immagine in basso

    Spero fortemente in un V.S. aiuto e vi ringrazio in anticipo

    See You
    ..:: Deltafox ::..
    In God We Trust

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Vorrei capirne il funzionamento... Grazie

    Benvenuto sul forum
    P.S.= per vedere l'effetto potete andare qui e cliccare sull'immagine in basso
    Definisci "qui"

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Fatto sorry
    In God We Trust

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    "Non sei connesso al forum. Connettiti utilizzando il modulo seguente"

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Si puoi anche non iscriverti l'immagine e l'effetto è cmq visualizzabile cliccando in basso a tutto sull'immagine I-Tab...

    Se vuoi ti iscrivo

    Grazie per le risposte
    In God We Trust

  6. #6
    Ciao br1.. è notte lo so... ma dopo vari spulci nelle variabili della skin, sono riuscito finalmente a replicare l'effetto "in locale" diciamo.. so che è un thread lungo spero tu lo legga comunque.. grazie...

    vediamo gli errori che ho commesso prima, o meglio cosa ho cambiato affinche l'effetto funzionasse anche in locale creando una pagina html ad hoc :

    1) mancava un altra function presente in un altro .js ( ipb_global.js ) ho pulito quest'ultimo rimanendo intatte all'interno solo le variabili interessate e la function interessata.. per ora non la implemento in un unico , ad esempio, itab_global.js

    eccola :

    Codice PHP:
    var is_ie = ( (uagent.indexOf('msie') != -1) && (!is_opera) && (!is_safari) && (!is_webtv) );
    var 
    is_ie4    = ( (is_ie) && (uagent.indexOf("msie 4.") != -1) );
    var 
    is_ie7    = ( (is_ie) && (uagent.indexOf("msie 7.") != -1) );
    var 
    is_moz    = (navigator.product == 'Gecko');

    /*-------------------------------------------------------------------------*/
    // Generate new iframe include
    /*-------------------------------------------------------------------------*/

    function iframe_include()
    {
        
    this.iframe_id               null;
        
    this.iframe_obj            null;
        
    this.iframe_add_to_div     null;
        
    this.iframe_add_to_div_obj null;
        
    this.iframe_main_wrapper   null;
        
    this.iframe_classname      'GBL-component-iframe';
        
    this.ok_to_go              1;
        
    this.iframe_height         300;
        
    this.ajax                  '';
    };

    iframe_include.prototype.init = function()
    {
        try
        {
            
    this.iframe_add_to_div_obj document.getElementByIdthis.iframe_add_to_div );
        }
        catch( 
    error )
        {
            
    this.ok_to_go 0;
        }
    };

    iframe_include.prototype.include = function( url )
    {
        
    //-----------------------------------------
        // Check
        //-----------------------------------------
        
        
    if ( ! this.ok_to_go )
        { 
            return 
    false;
        }
        
        
    //-----------------------------------------
        // INIT
        //-----------------------------------------
        
        
    var iheight parseIntthis.iframe_add_to_div_obj.style.height );
        var 
    iwidth  parseIntthis.iframe_add_to_div_obj.style.width );
        
        
    //-----------------------------------------
        // Generate iFrame box
        //-----------------------------------------
        
        
    if ( this.iframe_obj )
        {
            
    this.iframe_add_to_div_obj.removeChildthis.iframe_obj );
        }
        
        
    this.iframe_obj document.createElement'IFRAME' );
        
        
    this.iframe_obj.src                   url;
        
    this.iframe_obj.id                 this.iframe_id;
        
    this.iframe_obj.name               this.iframe_id;
        
    this.iframe_obj.scrolling          'no';
        
    this.iframe_obj.frameBorder        'no';
        
    this.iframe_obj.border             '0';
        
    this.iframe_obj.className          this.iframe_classname;
        
    this.iframe_obj.style.width        iwidth  iwidth 'px'  '100%';
        
    this.iframe_obj.style.height       iheight iheight 'px' this.iframe_height 'px';
        
    this.iframe_obj.style.overflow     'hidden';
        
    this.iframe_obj.style.padding      '0px';
        
    this.iframe_obj.style.margin       '0px';
        
        
    // Ajax object
        
    this.ajax = new ajax_request();
        
        
    // Fix up padding
        
    this.iframe_add_to_div_obj.style.padding '0px';
        
    this.iframe_add_to_div_obj.style.margin  '0px';
        
        if( 
    is_ie && !is_ie7 )
        {
            
    this.iframe_add_to_div_obj.style.paddingLeft '6px';
            
    this.iframe_add_to_div_obj.style.paddingRight '6px';
        }
        
        
    // Add environmentals..
        
    this.iframe_obj.iframe_loaded      0;
        
    this.iframe_obj.iframe_init        0;
        
    this.iframe_obj._this              this;
        
        
    // Attach iFrame inside our DIV
        
    this.iframe_add_to_div_obj.style.overflow '';
        
    this.iframe_add_to_div_obj.appendChildthis.iframe_obj );
        
        
    this.ajax.show_loadingajax_load_msg );
        
        
    // Add handler
        
    if ( is_ie )
        {
            
    this.iframe_obj.allowTransparency  true;
            
    this.iframe_obj.onreadystatechange this.iframe_on_load_ie;
        }
        else
        {
            
    this.iframe_obj.onload this.iframe_onload;
        }
    }; 
    2) piccola modifica quindi alla precedente pagina html creata :

    Codice PHP:
    <head>
    <
    meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <
    title>Documento senza titolo</title>
    <
    style type="text/css" media="all">

    @
    import url(style_images/css_7.css);

    </
    style
     </
    head
    <
    body>
    <
    script type="text/javascript">
     var 
    ipb_var_image_url     "style_images/itab";
    </script>
    <script type="text/javascript" src='jscripts/ipb_global.js'></script>
    <script type='text/javascript' src='style_images/itab/folder_js_skin/itab_global.js'></script>
    <span rel='itab-about'>
        [img]style_images/itab/itab_about_logo.gif[/img]
      </span>
    </body> 
    </html> 
    cosa è cambiato?
    in primis il richiamo del css qui uso un @import url(style_images/css_7.css); prima src="style_images/css_7.css"

    Non so che differenza ci sia onestamente, fatto sta che in quest'ultimo caso non funziona l'effetto

    Naturalmente ho richiamato anche la function nel file ipb_global.js con :

    <script type="text/javascript" src='jscripts/ipb_global.js'></script>

    e per finire aggiunta la variabile

    Codice PHP:
    <script type="text/javascript">
     var 
    ipb_var_image_url     "style_images/itab";
    </script> 
    Se ti andrebbe di vedere i file, ho ricompresso il tutto in un nuovo ZIP Scaricabile qui ...

    -------------------------------------------

    Capito il funzionamento in linea di massima almeno per un neofita come me... ,mi vien da chiedere forse te lo aspettavi ora...

    come posso criptare anche io il contenuto del "pop up" che viene mostrato come è stato fatto per questa skins.. vedo ad esempio le function nel file itab_global.js:

    function itab_about_create_box(o) & function itab_about_changelog(d)

    nelle loro forme :

    Codice PHP:
    var itab_about_denc('521561....579523');

    c.innerHTML        itab_about_denc('5065065...78573').replace(/\n/gi'
    '
    ); 
    se non erro sono criptate in bluefish? io una volta usavo un espediente in questo modo per decriptarle :

    <SCRIPT language=JavaScript>document.write('<textarea cols="80" rows="40" name="whatever">');<!--
    document.write(unescape("521561..523"));//--></SCRIPT>
    </textarea>

    in grasseto il codice usato per mettere in chiaro il contenuto criptato aggiunto subito dopo dopo il tag <script> e concluso con un </textarea>

    Mi dava in locale creando una pagina html apposita il codice in chiaro..

    Qui non saprei come gestire questa cosa nella function relativa...

    Che ne pensi??? fattibile?

    Immagino che forse avrò annoiato... chiedo cumunque scusa...

    Notte

    ..:: Deltafox ::..

    In God We Trust

  7. #7
    sono riuscito a decriptarne il contenuto... ora vediamo come criptare..



    vado a nanna per adesso

    ciauz
    In God We Trust

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Mi spiace, ma pur con tutta la buona volonta' non ho ancora gli elementi occorrente anche solo per provare... nella tua pagina originaria (col mio IE) non vedo alcun effetto; il file zip e' incompleto in molte parti, le modifiche che hai postato sul forum sono anch'esse insufficienti; manca la definizione di alcune variabili utilizzate; mancano diversi script/funzioni utilizzate... sara' anche la domenica ma ci ho capito ben poco, scusa

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  9. #9
    tranquillo.. immagino cmq sai sono riuscito a fare tutto mi manca solo sapere che metodo hanno usato per criptare.. nel file itab_global.js queste 2 parte in grassetto..


    var d = itab_about_denc('521561....579523 ');

    c.innerHTML = itab_about_denc('5065065...78573 ').replace(/n/gi, '
    ');

    so che hanno usato la key =

    var itab_about_key = 'i-tab';

    ma non ho capito a questa key questa funzione cosa fa?

    Codice PHP:
    function itab_about_enc_key()
    {
        var 
    0;
        for (var 
    i=0i<itab_about_key.lengthi++)
        {
            
    k+itab_about_key.charCodeAt(i);
        }

        if (
    == 0)
        {
            
    alert('Someone has altered something in here that they should not have been doing. >.<');
        }

        return 
    k;


    .charCodeAt la converte in unicode o cosa?

    comunque se clicchi qui dovresti vedere l'effetto di cui parlo cliccando sull'immagine..

    io riesco a decriptare il loro contenuto ma non so come criptarlo usando la stessa key magari..

    sai se esiste uno script che data una key mi cripta allo stesso modo?

    qui il decript avviene con qst function

    Codice PHP:
    function itab_about_denc(c)
    {
        var 
    itab_about_enc_key();
        var 
    3;
        var 
    '';

        if (
    0)
        {
            if (
    c.length 0)
            {
                for (var 
    i=0i<c.lengthi+=3)
                {
                    var 
    c.substring(ij);
                    var 
    = (parseInt(x)-k);
                    var 
    unescape('%'+t.toString(16));

                    if (
    == '%d' || == '%a')
                    {
                        
    r+'\n';
                    }
                    else
                    {
                        
    r+y;
                    }

                    
    += 3;
                }
            }
        }

        return 
    r;

    vorrei solo riuscire a criptare allo stesso modo, non mi sembra un unescape normale...

    Ciao & grazie
    In God We Trust

  10. #10
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
    function enc(c)
    {
        var k = itab_about_enc_key(); // attualmente vale 461 // 
        var r = ''; 
    	
        if (k > 0) 
        { 
            if (c.length > 0) 
            { 
                for (var i=0; i<c.length; i++) 
                { 
                    var x = c.charCodeAt(i) +k; 
                    y = String(1000+x).substr(1)
                    r = r + y; 
                } 
            } 
        } 
    
        return r;
    }
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.