Come posso ridimensionare un swf durante il runtime per fare in modo che il browser crei barre di scorrimento HTML?

StackOverflow https://stackoverflow.com/questions/32871

Domanda

Ho un swf con carichi di testo in uno Sprite che si ridimensiona in base al contenuto inserito - Mi piacerebbe però che quelli che sono più lunghi della pagina facessero in modo che il browser utilizzi le sue barre di scorrimento native anziché gestirlo in actionscript (molto molto simile http://www.nike.com/nikeskateboarding/v3/...)

Ho dato un'occhiata alle cose che ha fatto Nike ma non sono riuscito a farcela.Qualche idea?

È stato utile?

Soluzione

Non l'ho mai fatto in questo modo, ma penso swffit potrebbe essere in grado di farcela.

Altri suggerimenti

Il trucco sta nell'utilizzare un semplice JavaScript per ridimensionare il nodo Flash DOM:

function resizeFlash( h ) {
    // "flash-node-id" is the ID of the embedded Flash movie
    document.getElementById("flash-node-id").style.height = h + "px";
}

Che chiami dal filmato Flash in questo modo:

ExternalInterface.call("resizeFlash", 400);

In realtà non è necessario avere il codice JavaScript esternamente, puoi fare tutto da Flash se vuoi:

ExternalInterface.call(
    "function( id, h ) { document.getElementById(id).style.height = h + 'px'; }",
    ExternalInterface.objectID,
    400
);

La funzione anonima serve solo per poter passare l'ID e l'altezza come parametri invece di concatenarli nella stringa JavaScript.

Penso che JavaScript sia abbastanza multipiattaforma.Se vuoi vedere un esempio dal vivo guarda questo sito: talkoftheweather.com.Potrebbe sembrare che non faccia nulla, ma ridimensiona automaticamente le dimensioni del filmato Flash per accogliere tutte le notizie (lo fa subito dopo aver caricato le notizie, cosa che avviene così rapidamente che non ti accorgi che ciò accade).Il ridimensionamento impone al browser di mostrare una barra di scorrimento verticale.

Ho guardato a metà swffit ma l'altezza (e la larghezza a volte ma soprattutto l'altezza) sarebbero dinamiche - swffit dichiariamo un maxHeight ma quel numero cambierebbe costantemente... forse potrei capire come impostarlo dinamicamente.Comunque per me è un ottimo punto di partenza: grazie!

Quello che ho usato principalmente if for è limitare quanto piccolo puoi creare un flash "fulbrowser", e per questo funziona benissimo.Buon hacking!

(e non dimenticare di pubblicare qui i tuoi risultati, potrei averne bisogno troppo presto ;))

Dimensioni SWF

Vedere Qui per ulteriori dettagli.

Intuitsolutions.ca

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top