Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [MX2004] flash e dreamweaver....

    salve
    spero di aver postato nella sezione adatta
    il mio problema è questo, in dreamweaver ho creato vari layer, uno sopra l'altro, ed in ogni layer viene caricato un swf tramite active x. di fianco a questi layer c'è un menu che dovrebbe comandare l'accensione o lo spegnimento di questi layer.

    secondo voi la cosa è fattibile?


    vi ringrazio anticipatamente

    gfa

  2. #2
    grazie lo stesso comunque ho risolto, ho trovato su flash-mx un tutorial per l'occasione
    questo è il link
    http://flash-mx.html.it/guide/view_...dguida=8&id=191

    però l'ho dovuto modificare un pò,

    il mio problema è questo nel menu in flash, ho una serie di pulsanti creati tramite duplicatemovie, quindi per aprire un swf ho bisogno di farlo tramite una variabile,
    esempio "swf"+variabile"+".swf"
    pero il problema è che io non devo aprire un swf ma devo solo passargli un comando

    tipo questo
    on(release){
    getURL("javascript:bw.writeToLayer('dragged', objSWF)");
    }

    quello che mi interessa variare è objSWF però h oprovato in tutte le maniere ma niente non funziona, però se scrivo direttamente senza nessuna variabile funziona,
    mica potete aiutarmi in questo

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non conosco flash, per cui non so se il ragionamento fila.


    In effetti la funzione getUOL() e` un elemento Flash, mentre quanto segue la keyword javascript: e` sintassi JS.

    Comunque la cosa dovrebbe essere:

    getURL("java script:varJS='nomefile.swf'; bw.writeToLayer('dragged', varJS);");

    che sostituisce la sintassi
    getURL("java script:bw.writeToLayer('dragged', 'nomefile.swf');");

    Naturalmente la variabile puo` essre definita anche in altro posto, purche` sia della stessa pagina, sia globale e sia definita prima dell'uso.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    grazie Mich_ per avermi risposto, pero forse ho sbagliato a postare il problema, perchè a me non serve aprire una pagina .swf, ma andare a comandare la variabile objSWF, l'esempio che ho fatto("swf"+variabile"+".swf") forse ha tratto un po in inganno mi sa,
    quindi ricapitolando io ho:

    una pagina html che richiama un file.js, nel <body> due layer uno dove viene caricato un menu (in flash) e nell'altro layer vengono caricati gli swf esterni.

    codice pagina html:
    <html>
    <head>
    <title>Documento senza titolo</title>
    <SCRIPT language="JavaScript1.2" type="text/JavaScript" src="dragLayer.js"></SCRIPT>

    </head>

    <body>
    <div id="dragged" style="position:absolute; left:445px; top:20px; width:217px; height:187px; z-index:1"></div>
    <DIV
    id="flashMovie"
    style="position:absolute; left:15px; top:15px; width:300px; height:200px; z-index:2;">
    <OBJECT
    classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000"
    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
    WIDTH="200" HEIGHT="200" ID="mainMovie">
    <PARAM NAME=movie VALUE="menu.swf">
    <PARAM NAME=quality VALUE=best>
    <PARAM NAME=bgcolor VALUE=#EEEEEE>
    <PARAM NAME=wmode VALUE=opaque>
    <EMBED
    src="menu.swf"
    quality=best
    bgcolor=#EEEEEE
    swLiveConnect="true"
    name="mainMovie"
    WIDTH="200"
    HEIGHT="200"
    TYPE="application/x-shockwave-flash"
    PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
    </EMBED>
    </OBJECT>
    </DIV>
    </body>
    </html>

    nel js ci sono queste funzioni:
    /////////////////////////////////////////////////////
    Browser = function()
    {
    this.N4 = (document.layers) ? true : false;
    this.IE = (document.all) ? true : false;
    this.N6 = (document.getElementById) ? true : false;
    };

    Browser.prototype.writeToLayer = function(id, obj)
    {
    if (this.N4) {
    document.layers[id].document.close();
    document.layers[id].document.write(obj);
    document.layers[id].document.close();
    } else {
    if (this.IE) {
    eval("document.all." + id + ".innerHTML='" + obj + "'");
    } else {
    document.getElementById(id).innerHTML = obj;
    }
    }
    };


    function init(){

    swf0 = '<OBJECT classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" WIDTH="100" HEIGHT="100">' +
    '<PARAM NAME=movie VALUE="swf0.swf"><PARAM NAME=quality VALUE=best><PARAM NAME=bgcolor VALUE=#EEEEEE><PARAM NAME=wmode VALUE=transparent>' +
    '<EMBED src="swf0.swf" quality=best bgcolor=#EEEEEE wmode=transparent WIDTH="100" HEIGHT="100" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED></OBJECT>';


    swf1= '<OBJECT classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" WIDTH="766" HEIGHT="750">' +
    '<PARAM NAME=movie VALUE="swf1.swf"><PARAM NAME=quality VALUE=best><PARAM NAME=bgcolor VALUE=#EEEEEE><PARAM NAME=wmode VALUE=transparent>' +
    '<EMBED src="swf1.swf" quality=best bgcolor=#EEEEEE wmode=transparent WIDTH="766" HEIGHT="750" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED></OBJECT>';


    swf2 = '<OBJECT classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" WIDTH="766" HEIGHT="600">' +
    '<PARAM NAME=movie VALUE="swf2.swf"><PARAM NAME=quality VALUE=best><PARAM NAME=bgcolor VALUE=#EEEEEE><PARAM NAME=wmode VALUE=transparent>' +
    '<EMBED src="swf2.swf" quality=best bgcolor=#EEEEEE wmode=transparent WIDTH="766" HEIGHT="600" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED></OBJECT>';
    bw = new Browser();
    bw.writeToLayer('dragged', swf0);

    }
    /////////////////////////////////////////////////////////

    nel menu in flash, invece, vengono inseriti questi parametri:
    nel pulsante in flash viene inserito questo codice
    on(release){
    getURL("javascript:bw.writeToLayer('dragged',swf2) ");

    }
    ed in un movieclip sullo stage questo codice:

    onClipEvent(load){
    getURL("javascript:init()");
    }
    /////dove dragged è il nome del layer dove vengono caricati gli swf esterni(swf0,swf1,swf2...)
    ed swf2 corrisponde all'swf2.swf.


    questo funziona benissimo se avrei tanti pulsanti indipendenti, ma purtroppo ho un solo pulsante dove vengono, tramite ActionSscript, creati tramite duplicatemovie, quindi dovrei andare tramite in ciclo for a settare il numero subito dopo swf.
    esempio
    getURL("javascript:bw.writeToLayer('dragged',swf+v ariabile)");
    pero facendo cosi ho visto che non funziona.

    come devo fare e se si può fare
    vi ringrazio anticipatamente
    gfa

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Troppi codici proprietari e troppi linguaggi che non conosco.

    Lascio rispondere gli esperti di IE.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.