|
|
#1 (permalink) |
|
(Flash) LoadVar ve mac uyumsuzluğu...
Merhaba; www.linxmedia.com adresinde daha önceden hazırladığım bir flash sitesi var. Portfolio bölümü kısmen dinamik. Yani resimleri bir klasörden, yazıları text dosyasından alıyor. Pc'de gayet iyi çalışıyor fakat Mac'de bakınca resimlerin preload olduğu bölümde "%nan" şeklinde bir hata çıkıyor yani sanki resimler klasörde bulunamamış gibi... Böyle bir uyumsuzluk neden kaynaklanabilir? Böyle birşeyle karşılaşan varmı? İsterseniz kodu yollarım.. "Mac ile de uyumlu olmayıversin canııım" diyemiyoruz, zira müşteri pc kullanmıyor :P Diğer arkadaşlar da zamanınız varsa portfolio bölümüne girerek ilk iki kategoride rastgele birine tıklayabilir ve çalışmıyorsa neler olduğunu buraya yazabilirseniz çok sevinirim çünkü müşterinin dediğine göre rastgelelik var yani her zaman hata vermiyormuş ben rastlayamadım (Mac - pc farketmez)... Teşekkürler. Mesaj gravity tarafından 02.12.2004 (09:36) yeniden düzenlendi. |
|
|
|
|
|
|
#2 (permalink) |
|
Re: (Flash) LoadVar ve mac uyumsuzluğu...
scripti buraya yazarsan yardımcı olmaya çalışırım
__________________
Je ne veux pas être flétri de la qualification de poseur. Je ne laisserai pas des Mémoires. La poésie n'est pas la tempête, pas plus que le cyclone. C'est un fleuve majestueux et fertile. (...) |
|
|
|
|
|
|
#3 (permalink) |
|
Re: (Flash) LoadVar ve mac uyumsuzluğu...
Örnek:
Portfolio'da ilk buton olan "US Robotics" referansına basınca aktarılan değişkenler şunlar: Kod:
on (press) {
_parent.category="A";
_parent.i=1;
_parent.play();
}
Sahne devam eder ayrı bir movieclip'de resimlerin yer alacağı çerveveler cizilir ve sonraki 4 keyframe actionları: keyframe1: Kod:
reference=_parent.category+_parent.i;
captext = eval("dynzone.caption"+reference);
inftext = eval("dynzone.info"+reference);
mainimg = eval("dynzone.image"+reference);
thumbimg = eval("dynzone.thumb"+reference);
keyframe2: Kod:
dynimage._alpha=0; dynthumb._alpha=0; loadMovie(mainimg,"dynimage"); loadMovie(thumbimg,"dynthumb"); keyframe3: Kod:
a=Math.round((dynimage.getBytesLoaded()/dynimage.getBytesTotal())*100);
b=Math.round((dynthumb.getBytesLoaded()/dynthumb.getBytesTotal())*100);
if (a>=100 && dynimage._alpha<100) {
dynimage._alpha=dynimage._alpha+10;
}
if (b>=100 && dynthumb._alpha<100) {
dynthumb._alpha=dynthumb._alpha+10;
}
a ve b, resimlerin bir andaki alfa değerleri... keyframe4: Kod:
if (dynimage._alpha<100 || dynthumb._alpha<100) {
gotoAndPlay(17);
}
else { stop();
}
Acaba server üzerindeki dosyaların absolute path'ini mi göstermek lazım? Yani c:/abcd/xyz şeklinde... Şimdi diceksinki keşke dilimi tutsaydım nerden sordum da bulaştım Haklısın derim...
|
|
|
|
|
|
|
#4 (permalink) |
|
Re: (Flash) LoadVar ve mac uyumsuzluğu...
%nan hatasını next tusuna arka arkaya basınca veriyor. bu butonlardaki kodları göndermediğin için tam hatayı bilmiyorum ancak son sıraya geldikten sonra da aktif kalmasından dolayı anlıyorum ki, if condition'ı ile bir sıra sayısı verdikten sonra bir önceki mc'yi unloadMovie(); komutu ile kaldırıp oynatma kafasını baştan başlatıyorsun. (butonlar kaybolup, tekrar geliyorlar). böyle olunca butonlar timeline'da başa dönüyorlar ve kodları her maddede tekrar yorumluyorlar. kullanıcı butonların timeline hareketini beklemeden next tusuna bastığı için de kodlar çalışmadan diğerine geçmeye çalışıyor ve sistem sapıtıyor. bütün sorun burada. sistemini değiştirmen zor olur mu bilmiyorum ama fotoları ve yazıları arrray komutu ile yazman sana çok daha temiz bir kod sistemi sunar.
örneğin benim kullandığım bir kodları sana yazayım. yalnız küçük fotolar için ayrı büyük fotolar için ayrı yazman gerekecek: HTML Code:
this.pathToPics = "kategoriA/";
this.pArray = ["foto0.jpg", "foto1.jpg", "foto2.jpg", "foto3.jpg", "foto4.jpg", "foto5.jpg", "foto6.jpg", "foto7.jpg", "foto8.jpg", "foto9.jpg"];
this.fadeSpeed = 20;
this.pIndex = 0;
loadMovie(this.pathToPics+this.pArray[0], _root.photo);
MovieClip.prototype.changePhoto = function(d) {
this.pIndex = (this.pIndex+d)%this.pArray.length;
if (this.pIndex<0) {
this.pIndex += this.pArray.length;
}
this.onEnterFrame = fadeOut;
};
MovieClip.prototype.fadeOut = function() {
if (this.photo._alpha>this.fadeSpeed) {
this.photo._alpha -= this.fadeSpeed;
} else {
this.loadPhoto();
}
};
MovieClip.prototype.loadPhoto = function() {
var p = _root.photo;
p._alpha = 0;
p.loadMovie(this.pathToPics+this.pArray[this.pIndex]);
this.onEnterFrame = loadMeter;
};
MovieClip.prototype.loadMeter = function() {
var i, l, t;
l = this.photo.getBytesLoaded();
t = this.photo.getBytesTotal();
if (t>0 && t == l) {
this.onEnterFrame = fadeIn;
} else {
trace(l/t);
}
};
MovieClip.prototype.fadeIn = function() {
if (this.photo._alpha<100-this.fadeSpeed) {
this.photo._alpha += this.fadeSpeed;
} else {
this.photo._alpha = 100;
this.onEnterFrame = null;
}
};
next ve prev butonlarının kodları ise hata yaptırmayacak kadar kolay. prev butonu kodu HTML Code:
on (release) {
_root.changePhoto(-1);
}
HTML Code:
on (release) {
_root.changePhoto(1);
}
__________________
Je ne veux pas être flétri de la qualification de poseur. Je ne laisserai pas des Mémoires. La poésie n'est pas la tempête, pas plus que le cyclone. C'est un fleuve majestueux et fertile. (...) |
|
|
|
|
|
|
#5 (permalink) |
|
Re: (Flash) LoadVar ve mac uyumsuzluğu...
Daha fazla yardımcı olamazdın çok teşekkürler. Array kullanmak biraz itici geliyordu onun için stage üzerinde çözme yoluna gitmiştim ama böyle bir sorun çıkması zaten muhtemelmiş, sen söyleyince aynen netleşti kodlama mantığındaki yanlışlık...
Tekrar teşekkürler zaman ayırdığın için. |
|
|
|
|
|
|
#6 (permalink) |
|
Re: (Flash) LoadVar ve mac uyumsuzluğu...
rica ederim
__________________
Je ne veux pas être flétri de la qualification de poseur. Je ne laisserai pas des Mémoires. La poésie n'est pas la tempête, pas plus que le cyclone. C'est un fleuve majestueux et fertile. (...) |
|
|
|
|
| Sponsorlu Bağlantılar | |
|
Zoque.Forum
Reklam
|
|
Zoque'a hoşgeldiniz!