64 messaggi dal 09 gennaio 2006
Ho recentemente postato in questo forum sull'uso di swobject per depositare un file .swf in una pagina .aspx.
Il mio obiettivo era quello di visualizzare diversi file .swf uno alla volta, premendo altrettanti pulsanti, nella stessa div.
Ho provato con del codice associato ad onClientClick, OnClientClick='swfobject.embedSWF "AlicePhysics.swf", "FlashAnimation1", "300", "300", "9")', ma il massimo che sono riuscito a fare e' far comparire le animazioni solo per un istante.
Non essendo un duro in Javascript, anzi sono in questo molto duro, chiedo un cortese aiuto.
La versione del mio swfobject.js e' 2.1.
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao

Cosa ti succede quando clicchi il pulsante? ti scatena il postback o cosa?
HTH
.

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
64 messaggi dal 09 gennaio 2006
Ciao Stefano
Si, si attua il postback.
Ecco il semplicissimo markup code che ho usato:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Prova2.aspx.vb" Inherits="Prova2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>


<script type="text/javascript" src="swfobject.js"></script>

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick='swfobject.embedSWF("AlicePhysics.swf", "FlashAnimation1", "300", "300", "9")' />

<div id="FlashAnimation1" runat="server" style="width:300px;height:300px;background-color:aqua "></div>

</div>
</form>
</body>
</html>


Quando premo il pulsante compare l'animazione per un breve istante e poi scompare. Cioe' appare un flash del file flash, per usare un gioco di parole.

Lo stesso comportamento si verifica se tolgo dal button l'evento OnClientClick e lo metto nel code behind in PageLoad come:

Button1.Attributes.Add("onclick", " swfobject.embedSWF('AlicePhysics.swf', 'FlashAnimation1', '300', '300', '9')")
Saluti
Federico
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

prova con OnClientClick='swfobject.embedSWF("AlicePhysics.swf", "FlashAnimation1",
"300", "300", "9"); return false;'

HTH

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
64 messaggi dal 09 gennaio 2006
Grande Stefano!
Va che e' una meraviglia!
Ma come si fa' a capire come districarsi in questa selva selvaggia aspra e forte, per dirla alla dantesca, che e' asp.net? Si puo' fare quasi tutto, ma sempre manca un particolare per arrivare laddove si vuole.
Grazie e salutoni
Federico
64 messaggi dal 09 gennaio 2006
Ciao
C'e' solo un problema, e cioe' che non posso piu' usare OnCommand per aprire e chiudere la finestra ove visualizzare l'animazione.
C'e' una scappatoia?
federico
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,


ho scateni il postback o non lo scateni, non puoi avere due comportamenti diversi con lo stesso tasto

che devi fare di preciso?

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
64 messaggi dal 09 gennaio 2006
Ciao
In un UpdatePanel ho una div,diciamo "ciccio", con z-index superiore al resto, contenente un FlashVideo control, un'Image control, e un Label control normalmente invisibili, sui quali, come risultato della pressione di vari pulsanti, visualizzo, rispettivamente, video .flv, foto, e brevi testi.
La premuta di uno dei pulsanti invia al code behind, tramite CommandName e CommandArgument, sia il tipo di visualizzazione che la location dell'oggetto da visualizzare. Come risultato, in una parte fissa dello schermo, compare una finestra con il contenuto voluto, sovrapposta alle immagini e testi esistenti e dotata anche di un'animazione di fade-in, .
Ciccio contiene anche un pulsante per la cancellazione della finestra corrente.
Volevo aggiungere a ciccio un'ulteriore controllo sul quale poter visualizzare anche file .swf. Per questo mi sono accinto ad analizzare il problema, che ho chiarito col tuo validissimo aiuto. Purtroppo, per questo ultimo tipo di file sono arrivato ad un punto morto. In statico la cosa non e' possibile. Se inserisco il file in dinamico ( return false) non posso contemporaneamente inviare anche il comando visible al controllo che va a contenerlo. Potrei mettere in ciccio una semplice div, che normalmente e' invisibile, sulla quale riversare il file swf, ma non potrei cancellarla oltre a non poter usufruire delle decorazioni di ciccio che avvengono in dinamico tramite OnCommand.
Forse chiedo un po' troppo, ma l'idea di una finestra multipurpose mi cissa molto.Sono piuttosto
Ciao, Federico
Modificato da nodar10 il 09 gennaio 2009 17.38 -

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.