Toon posts:

[Flash MX '04] Probleem met actionscript.

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb het volgende stuk actionscript, ik heb overal al gezocht in tutorials maar dit is een specifiek probleem.

Hoe het eruit ziet..: Links in het scherm staan 20 plaatjes, 1 plaatje wordt naar rechts geschoven en vergroot naar 300x300 pixels. de andere 19 zijn 50x50 pixels.

Nu wil ik als 1 van de 20 plaatjes rechts staat aan elk plaatje een link geven, zodat ik het plaatje kan uitvergroten. Helemaal mooi zou zijn dat dit binnen in flash gebeurd..
Maar ik ben al tevreden met een uitvergrote foto in IE, een popup dus...

Ik denk dat het ergens in het vetgedrukte moet maar niks wil werken..
Ik snap ook niet hoe ik elk plaatje afzonderlijk een link kan geven...zo krijgt elk plaatje toch dezelfde link?

André: overbodig lange lap doe weggehaald, staat we in de post hieronder ;)

Als ik hiervan:
on(release) {
getURL("http://www.nu.nl","_blank");
}

Opent nu.nl niet als ik op een figuur van 50x50 klik maar wel als ik op een figuur van 300x300 klik.
Dat is goed, alleen wil ik nu dat ik aan elke van de 20 figuren afzonderlijk een url kan geven.

[ Voor 64% gewijzigd door André op 15-07-2005 08:39 ]


  • XangadiX
  • Registratie: Oktober 2000
  • Laatst online: 25-03 10:55

XangadiX

trepanatie is zóó kinderachtig

whaaaaaaaa aarg... :(

hoe moeilijk is het om even [code=as] aan je post toe te voegen!


Flash ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
onClipEvent (load) {
this.pics.gotoAndStop(_root.num++);
accel = _root.accel;
rate = _root.rate;
targetwidth=50;
targetheight=50;
targetx=_x;
targety=_y;

startx=_x;
starty=_y;
}

onClipEvent(enterFrame) { 
//elasticScale(this.targetScale, this.accel, this.rate);
width = width * accel + (targetwidth - _width) * rate;
_width += width;
if(Math.abs(targetwidth-_width)<1) { _width=targetwidth; }

height = height * accel + (targetheight - _height) * rate;
_height += height;
if(Math.abs(targetheight-_height)<1) { _height=targetheight; }

x = x * accel + (targetx - _x) * rate;
_x += x;
if(Math.abs(targetx-_x)<1) { _x=targetx; }

y = y * accel + (targety - _y) * rate;
_y += y;
if(Math.abs(targety-_y)<1) { _y=targety; }


_parent.border_up._width=_width;
_parent.border_up._x=_x;
_parent.border_up._y=_y-5;

_parent.border_down._width=_width;
_parent.border_down._x=_x;
_parent.border_down._y=_y+_height;

_parent.border_left._height=_height+10;
_parent.border_left._x=_x;
_parent.border_left._y=_y-5;

_parent.border_right._height=_height+10;
_parent.border_right._x=_x+_width+5;
_parent.border_right._y=_y-5;
} 

/*
on(press) {
this.startDrag();
}

on(release, releaseOutside) {
stopDrag();
targetx=startx;
targety=starty;
}
*/


onClipEvent(mouseDown) {
if(this.hitTest(_root._xmouse, _root._ymouse)) {
_parent._parent.swapDepths(10000);
_parent.swapDepths(10001);
this.swapDepths(10002);
_parent._parent[_root.url].sq.targetwidth=50;
_parent._parent[_root.url].sq.targetheight=50;
_parent._parent[_root.url].sq.targetx=_parent._parent[_root.url].sq.startx;
_parent._parent[_root.url].sq.targety=_parent._parent[_root.url].sq.starty;
//trace(_root.url)

_root.url=_parent._name
targetwidth=300;
targetheight=300;
targetx=-250-_parent._x;
targety=-_parent._y-10;

s=new Sound(_root);
s.attachSound("hit");
s.start(0,1);

}

}


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

Update: 

on(release, releaseOutside) {
stopDrag();
targetx=startx;
targety=starty;
}
Als ik hiervan:
on(release) {
getURL("http://www.nu.nl","_blank");
}


ik heb echt geen idee wat je hier aan het doen bent, lees: dit is volstrekt irrelevante code voor wat je wil: namelijk een variabele uitwisselen door 2 movieclips.

Wat je eigenlijk wil doen is 20 thumbs inladen, en aan iedere thumb een url laden. Die url wil je uiteindelijk openen met getURL.

right.

20 thumbs inladen en plaatsen:

(on the fly geschreven, zitten vast fouten in)
Flash ActionScript:
1
2
3
4
5
6
7
8
9
for (i=0; i++; i<20) {
createEmptyMovieClip("placer" + i, getNextHighestDepth())
_this.["placer" + i].loadMovie(somePic)
_this.["placer" + i]._x = someEquatuon
_this.["placer" + i]._y = someEquatuon

_this.["placer" +i].someUrl = someURL

}


die laatste regel geeft iedere thumb een unieke url mee die je kunt opvragen door _this.placer.someURL en dus kunt openen met getURL(_this.placer.someURL)

Hoi, en welkom op GoT, leuk dat je er bent; lees de faq even: [rml][ W&G FAQ] Welkom in W&G: FAQ en Beleid[/rml]

[ Voor 5% gewijzigd door XangadiX op 14-07-2005 20:34 ]

Stoer; Marduq


Verwijderd

ik zou het zo doen.


Flash ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
ypositie = 0
for (var i=0; i<COUNT; i++) {
    var mc = createEmptyMovieClip("mc" + i, i + 1);
    mc.createEmptyMovieClip("holder"+i,i);
    mc["holder"+i].loadMovie(_root['image'+i]);
    mc["holder"+i]._y = ypositie
    ypositie= ypositie+100
    mc.link = _root['link'+i];
    mc.onRelease = function ()
        {
            getURL(''+this.link+'',"_self");
        };
}

[ Voor 36% gewijzigd door Verwijderd op 15-07-2005 13:44 ]