Actionscript probleempje

Beste actionscripters,

Ik ben aan een script voor een portfolio bezig.
Nu worden er een aantal thumbs ingeladen in een grid, en er zijn 16 thumbs zichtbaar, de rest is bedekt door een mask. En dan zijn er nog een up en down knop, om door de thumbs te scrollen.

Nu de vraag: hoe kan ik er voor zorgen dat als de bovenste thumb in het venster staat, de knop naar boven onzichtbaar word, en hetzelfde voor de onderste thumb, en de down knop?

Ik had dit als code, maar dat doet het niet helemaal:

[code:1:3d27a60c1c]
boven = false;
onder = true;

if(this._parent.mc_grid._y = mcgrid.mc_GridItem0._y){
onder = false
}
if(this._parent.mc_grid._y = mc_grid.mcGridItem+juist._y){
boven = false
}
if(boven = false){this.up._visible = false};
if(boven = true) {this.up._visible = true};
if(onder = false){this.down._visible = false};
if(onder = true){this.down._visible = true};[/code:1:3d27a60c1c]

Doet eigenlijk niks :slight_smile: maar dat klinkt zo kut :slight_smile:

Jonas

moet je niet == gebruiken voor vergelijkingen?

if (stoplicht == groen) {
rijden = true;
}

Oow, ja dat is idd zo :-) ff niet aan gedacht... Even kijken of die het zo wel doet.

Jonas

Mm, ok, bij het begin word de knop naar boven wel onzichtbaar, dus dat == was idd nodig. Maar er zit nog een fout in de rest van m'n code, want de boven = false en onder = true worden niet veranderd? Waar zou dit aan kunnen liggen?

[code:1:e880351c5c]
boven = false;
onder = true;
juist = thumbnails.length;

if(this._parent.mc_grid._y = mcgrid.mc_GridItem0._y){
onder == false
}
if(this._parent.mc_grid._y = mc_grid.mcGridItem+juist._y){
boven == false
}
if(boven == false){this.up._visible = false};
if(boven == true) {this.up._visible = true};
if(onder == false){this.down._visible = false};
if(onder == true){this.down._visible = true};

[/code:1:e880351c5c]

[code:1:640fa6c9d3] boven = false; onder = true; juist = thumbnails.length;

if(this._parent.mc_grid._y == mcgrid.mc_GridItem0._y){
onder = false
}
if(this._parent.mc_grid._y == mc_grid.mcGridItem+juist._y){
boven = false
}
if(boven == false){this.up._visible = false};
if(boven == true) {this.up._visible = true};
if(onder == false){this.down._visible = false};
if(onder == true){this.down._visible = true};
[/code:1:640fa6c9d3]

== is vergelijking
= is toekening
:wink:

Jah, heb ik geprobeerd, en toen waren de knoppen plots beide onzichtbaar... heb het ook geprobeerd met <= en >= maar dan waren ze ook onzichtbaar?

Ik ga ff verder proberen, want de fout moet daar gewoon ergens zitten! Als iemand nog een idee heeft waar het aan zou kunnen liggen, hoor ik het graag?

Jonas

probeer eens met stringTypes te werken ipv met boolean. Een variabele true of false declaren is niet zo katholiek ... :?

En maak er gelijk ook een gewoonte van om je code ordelijk te houden en waar kan/nodig een ; te zetten op het einde van een regel.

Hij gaat geen foutmelding geven, maar gisteren had ik nog een situatie waar het toch een probleem veroorzaakte.

[quote:97be32abb6="EL Mystica"]probeer eens met stringTypes te werken ipv met boolean. Een variabele true of false declaren is niet zo katholiek ... :?

En maak er gelijk ook een gewoonte van om je code ordelijk te houden en waar kan/nodig een ; te zetten op het einde van een regel.

Hij gaat geen foutmelding geven, maar gisteren had ik nog een situatie waar het toch een probleem veroorzaakte.[/quote:97be32abb6]

Wat bedoel je met stringTypes?

Groeten
Jonas

als je zet

boven = false;

dan is false een boolean.

Als je zet

boven = “false’”;

dan is false een String.

Ik dacht het al, ik hebm nu veranderd. Dit heb ik nu:

[code:1:48b2aeb40f]
boven = 0;
onder = 0;
juist = thumbnails.length;
zoek = mc_grid.mc_GridItem+juist;
trace(zoek);
if (mc_grid._y == this.mcgrid.mc_GridItem0._y) {
onder = 0;
}
if (mc_grid._y == this.mc_grid.mcGridItem+juist._y) {
boven = 0;
}
if (boven == 0) {
this.up._visible = false;
}
if (boven == 1) {
this.up._visible = true;
}
if (onder == 0) {
this.down._visible = false;
}
if (onder == 1) {
this.down._visible = true;
}
[/code:1:48b2aeb40f]

Maar die doet het ook nog niet?
Waar zou het aan kunnen liggen?
Dit is toch string e?

Jonas

grmbl

wat een weird thing

juist = thumbnails.length;
dus is juist een nummer, denk ik dan.

Hoe kan je de _y positie van dat nummer gaan gebruiken in dit:
mc_grid._y == this.mc_grid.mcGridItem + juist._y;

en die benamingen.

mc_grid
this.mcgrid.mc_GridItem0
this.mc_grid.mcGridItem

Dat is dan:

mc_grid met een child mcGridItem en een child mc_GridItemN
mcgrid met een child mc_GridItem0

Beetje verwarrend, niet? hoe hou je dat zelf nog allemaal bij?

[offtopic]Hé chonazz weet je wat ik jammer vind? Dat we nooit een site van jou zien want soms zien we wat langs komen en dat is super mooi maargoed...[/offtopic]

[code:1:8b68239b50] boven = 0; onder = 0; juist = thumbnails.length; zoek = mc_grid["mc_GridItem"+juist]; trace(zoek); if (mc_grid._y == mc_grid.mc_GridItem0._y) { onder = 0; } if (mc_grid._y == this.mc_grid["mcGridItem"+juist]._y) { boven = 0; } if (boven == 0) { this.up._visible = false; } if (boven == 1) { this.up._visible = true; } if (onder == 0) { this.down._visible = false; } if (onder == 1) { this.down._visible = true; } [/code:1:8b68239b50]

En dat zijn Numbers, btw. Strings staan gewoonlijk tussen " ".

En dan moet die code nog telkens opnieuw doorlopen worden, hé. Een onEnterFrame of interval of zo.

[quote:7610d20491="iPod Jimmy"][offtopic]Hé chonazz weet je wat ik jammer vind? Dat we nooit een site van jou zien want soms zien we wat langs komen en dat is super mooi maargoed...[/offtopic][/quote:7610d20491]

Oh zie dat je toch een site hebt staan. Maar hij krijgt een complete makeover

:-) Als de Makeover klaar is, dan laat ik zeker iets zien...

Groeten
jonas