Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-12-2008, 09:26   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2008
Beiträge: 1
Smile XML Gallerie mit Beschreibung

Hi,

ich habe mir durch templates ja schon einiges beibringen können, aber hier bin ich total überfragt...

Ich hab eine Gallerie, soweit so gut, hat auch alle funktionen die benötigt werden... Nur zeigt sie den passenden Bildinfos nur an wenn man über ein Bild fährt. Das ist mein Problem, die passenden Texte sollen einfach mit aufgelistet werden.

Kann mir jemand sagen wo sich dieser mysteriöse Teil im Script verbirgt?
Code:
stop();
import fl.transitions.Tween;
import fl.transitions.easing.*;

var filename_list = new Array();
var url_target_list:Array = new Array();
var url_list = new Array();
var title_list = new Array();
var description_list = new Array();
var date_list = new Array();

var i:Number;
var tn:Number = 0;
var no_of_column:Number = 1;
var no_of_row:Number = 2;	// number of rows showing at a time
var no_of_extra_row:Number;
var scale_factor:Number = 1.0;
var tween_duration:Number = 1.0;
var new_row:Number = 0;

var total:Number;
var flashmo_xml:XML = new XML();
var folder:String = "thumbnails/";
var xml_loader:URLLoader = new URLLoader();
xml_loader.load(new URLRequest("pe_news.xml"));
xml_loader.addEventListener(Event.COMPLETE, create_thumbnail);

var thumbnail_group:MovieClip = new MovieClip();
stage.addChild(thumbnail_group);

thumbnail_group.x = tn_group.x+ 100;
var default_y:Number = thumbnail_group.y = tn_group.y + 100;
thumbnail_group.mask = tn_group_mask;

tn_group.visible = false;
fm_previous.visible = false;
fm_next.visible = false;

tn_title.text = "";
tn_desc.text = "";
tn_date.text = "";

function create_thumbnail(e:Event):void 
{
	flashmo_xml = XML(e.target.data);
	total = flashmo_xml.thumbnail.length();
	no_of_extra_row = Math.floor(total / no_of_column) - no_of_row;
	
	for( i = 0; i < total; i++ )
	{
		filename_list.push( flashmo_xml.thumbnail[i].@filename.toString() );
		url_list.push( flashmo_xml.thumbnail[i].@url.toString() );
		url_target_list.push( flashmo_xml.thumbnail[i].@target.toString() );
		title_list.push( flashmo_xml.thumbnail[i].@title.toString() );
		description_list.push( flashmo_xml.thumbnail[i].@description.toString() );
	}
	load_tn();
}

function load_tn():void
{
	var pic_request:URLRequest = new URLRequest( folder + filename_list[tn] );
	var pic_loader:Loader = new Loader();

	pic_loader.load(pic_request);
	pic_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, on_loaded);
	tn++;
}

function on_loaded(e:Event):void
{
	if( tn < total )
	{
		load_tn();
	}
	else
	{
		fm_previous.visible = true;
		fm_next.visible = true;
		fm_previous.addEventListener( MouseEvent.CLICK, to_previous );
		fm_next.addEventListener( MouseEvent.CLICK, to_next );
		stage.addEventListener(MouseEvent.MOUSE_WHEEL, on_wheel );
	}

	var flashmo_bm:Bitmap = new Bitmap();
	var flashmo_mc:MovieClip = new MovieClip();

	flashmo_bm = Bitmap(e.target.content);
	flashmo_bm.x = - flashmo_bm.width * 0.5;
	flashmo_bm.y = - flashmo_bm.height * 0.5;
	flashmo_bm.smoothing = true;
	
	var bg_width = flashmo_bm.width + 10;
	var bg_height = flashmo_bm.height + 10;
	
	flashmo_mc.addChild(flashmo_bm);
	flashmo_mc.graphics.beginFill(0xFFFFFF);
	flashmo_mc.graphics.drawRect( - bg_width * 0.5, - bg_height * 0.5, bg_width, bg_height );
	flashmo_mc.graphics.endFill();
	
	flashmo_mc.name = "flashmo_" + thumbnail_group.numChildren;
	flashmo_mc.buttonMode = true;
	flashmo_mc.addEventListener( MouseEvent.MOUSE_OVER, tn_over );
	flashmo_mc.addEventListener( MouseEvent.MOUSE_OUT, tn_out );
	flashmo_mc.addEventListener( MouseEvent.CLICK, tn_click );
	flashmo_mc.scaleX = flashmo_mc.scaleY = scale_factor;

	flashmo_mc.x = thumbnail_group.numChildren % no_of_column 
						* ( bg_width + 10 ) * scale_factor;
	flashmo_mc.y = Math.floor( thumbnail_group.numChildren / no_of_column ) 
						* ( bg_height + 10 ) * scale_factor;

	thumbnail_group.addChild(flashmo_mc);
}

function tn_over(e:MouseEvent):void
{
	var mc:MovieClip = MovieClip(e.target);
	var s_no:Number = parseInt(mc.name.slice(8,10));
	
	thumbnail_group.addChild(mc);

	new Tween(mc, "scaleX", Elastic.easeOut, mc.scaleX, 1, tween_duration, true);
	new Tween(mc, "scaleY", Elastic.easeOut, mc.scaleY, 1, tween_duration, true);
	
	tn_title.text = title_list[s_no];
	tn_desc.text = description_list[s_no];
}

function tn_out(e:MouseEvent):void
{
	var mc:MovieClip = MovieClip(e.target);

	new Tween(mc, "scaleX", Strong.easeOut, mc.scaleX, scale_factor, tween_duration, true);
	new Tween(mc, "scaleY", Strong.easeOut, mc.scaleY, scale_factor, tween_duration, true);
	
	tn_title.text = "";
	tn_desc.text = "";
	tn_date.text = "";
}

function tn_click(e:MouseEvent):void
{
	var mc:MovieClip = MovieClip(e.target);
	var s_no:Number = parseInt(mc.name.slice(8,10));
	
	navigateToURL(new URLRequest(url_list[s_no]), url_target_list[s_no]);
}

function to_previous(e:MouseEvent):void
{
	if( new_row < 0 )
	{
		new_row++;
		new Tween( thumbnail_group, "y", Strong.easeOut, thumbnail_group.y, default_y + new_row * 100, tween_duration, true );
	}
}

function to_next(e:MouseEvent):void
{
	if( Math.abs(new_row) < no_of_extra_row )
	{
		new_row--;
		new Tween( thumbnail_group, "y", Strong.easeOut, thumbnail_group.y, default_y + new_row * 100, tween_duration, true );
	}
}

function on_wheel(e:MouseEvent):void
{
	if( e.delta > 0 )
		new_row++;
	else
		new_row--;

	if( new_row >= 0 )
		new_row = 0;
	else if( new_row < - no_of_extra_row )
		new_row = - no_of_extra_row;

	new Tween( thumbnail_group, "y", Strong.easeOut, thumbnail_group.y, default_y + new_row * 100, tween_duration, true );
}
Falls das nicht so ohne weiteres machbar ist, bin ich für Programmierangebote offen

Grüße
Ela
alias Workfloh.de
workfloh.de ist offline   Mit Zitat antworten
Alt 29-12-2010, 11:49   #2 (permalink)
Neuer User
 
Registriert seit: Dec 2010
Beiträge: 1
text tumbnail

Ich habe fast gleiche Problem. Ich kann so weit die Bilder als tumbnail benutzen und funktioniert super, aber ich will kein Bild als Tumbnail sondern ich will Text als thumbnails haben. und wenn auf text thumbnail klicke dann kommt bild und beschreibung.

kann jemand mir helfen????

achso habe vergessen ich mache mit As2.

Geändert von maximize (29-12-2010 um 11:51 Uhr)
maximize ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
gallerie, problem, xml

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 19:46 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele