试图加载远程图像插入闪存插曲闪存、插曲、图像、加载

2023-09-09 21:32:22 作者:来去皆江湖

尝试加载远程图像到Flash插曲,如果我使用绝对路径本地文件的工作甚至。我更新现有的库动态地从Picasa拉的图像。

Trying to load remote images into a flash sideshow local files work even if I use absolute path. I am updating existing gallery to dynamically pull images from Picasa.

在PHP工作正常,并从API拉图像。 http://domaineseattle.com/gallery/FlashPhotoStack_SRC/gallery.php

The php works fine and pulls the images from the API. http://domaineseattle.com/gallery/FlashPhotoStack_SRC/gallery.php

但是,当我将XML闪烁,它不会加载远程图像。

But when I pass the XML to flash it wont load remote images.

我添加

System.security.loadPolicyFile("http://photos.googleapis.com/data/crossdomain.xml");

要动作,但它仍然不会工作。

to ActionScript but it still wont work.

本股代息的插曲是:

System.security.loadPolicyFile("http://photos.googleapis.com/data/crossdomain.xml"); 
System.security.allowDomain("*");

MovieClip.prototype.addProperty("onLoad", function () {
    return __onLoadHandler__[this];
}, function (f) {
    if (__onLoadHandler__ == undefined) {
    	_global.__onLoadHandler__ = {};
    }
    __onLoadHandler__[this] = f;
});
Math.easeInQuad = function(t, b, c, d) {
    return c*(t /= d)*t+b;
};
Math.easeOutQuad = function(t, b, c, d) {
    return -c*(t /= d)*(t-2)+b;
};
Stage.scaleMode = "noScale";
myXML = new XML();
myXML.ignoreWhite = true;
myXML.onLoad = function() {
    nodes = myXML.childNodes;
    // ----------------------
    // find first image
    // ----------------------
    if (topimage.length) {
    	for (var i = 0; i<nodes.length; i++) {
    		if (nodes[i].attributes.src == topimage) {
    			var insert = nodes.slice(0, i);
    			nodes.splice(0, i);
    			nodes = nodes.concat(insert);
    		}
    	}
    }
    _root.gotoAndStop(2);
};
//if (_url.indexOf("http")>-1) {
myXML.load("gallery.php");
//} else {
//  myXML.load("gallery.xml");
//}
stop();

2

System.security.loadPolicyFile("http://photos.googleapis.com/data/crossdomain.xml"); 
System.security.allowDomain("*");

function drawOutline(mc, width, height) {
    var wallx = width/2+10;
    var wally = height/2+10;
    var offset = 4;
    // Shadow
    mc.beginFill(0x000000, 20);
    mc.moveTo(-wallx+offset, -wally+offset);
    mc.lineTo(wallx+offset, -wally+offset);
    mc.lineTo(wallx+offset, wally+offset);
    mc.lineTo(-wallx+offset, wally+offset);
    mc.lineTo(-wallx+offset, -wally+offset);
    // Outline
    mc.beginFill(0xFFFFFF, 100);
    mc.lineStyle(2, 0x333333, 100);
    mc.moveTo(-wallx, -wally);
    mc.lineTo(wallx, -wally);
    mc.lineTo(wallx, wally);
    mc.lineTo(-wallx, wally);
    mc.lineTo(-wallx, -wally);
    mc.endFill();
}
// ----------------------
// build placeholders
// ----------------------
loads = [];
stack = [];
depth = 9999;
for (i=0; i<nodes.length; i++) {
    attrs = nodes[i].attributes;
    img = _root.createEmptyMovieClip("image"+i, depth--);
    drawOutline(img, attrs.width, attrs.height);
    img.createEmptyMovieClip("imgholder", 1);
    img.imgholder._x = -attrs.width/2;
    img.imgholder._y = -attrs.height/2;
    img.imgholder.src = attrs.src;
    totalw += img._width;
    totalh += img._height;
    coverw = (img._width>coverw) ? img._width : coverw;
    coverh = (img._height>coverh) ? img._height : coverh;
    img._rotation = (Math.random()*16)-8;
    img._visible = false;
    img._alpha = 0;
    stack.push(img);
    loads.push(img);
}
stack[0]._rotation = 0;
gox = (totalw/nodes.length)*0.9;
goy = (-totalh/nodes.length)*0.4;
// ----------------------
// load images
// ----------------------
function loadimage(id) {
    if (loads[id]) {
    	loads[id]._visible = true;
    	loads[id].imgholder.loadMovie(loads[id].imgholder.src);
    	loads[id].imgholder.onLoad = function() {
    		loads[id].imgholder.onEnterFrame = function() {
    			if (this._parent._alpha<75) {
    				this._parent._alpha += 25;
    			} else if (this._parent._alpha<100) {
    				this._parent._alpha += 25;
    				loadimage(id+1);
    			} else {
    				delete this.onEnterFrame;
    			}
    		};
    	};
    }
}
loadimage(0);
// ----------------------
// handle swap
// ----------------------
_root.createEmptyMovieClip("Cover", 10000);
Cover.beginFill(0xFFFFFFF, 0);
Cover.moveTo(-coverw/2, -coverh/2);
Cover.lineTo(coverw/2, -coverh/2);
Cover.lineTo(coverw/2, coverh/2);
Cover.lineTo(-coverw/2, coverh/2);
Cover.lineTo(-coverw/2, -coverh/2);
Cover.endFill();
Cover.onRelease = function() {
    // Shuffle the top image to the side
    stack[0].t = 0;
    stack[0].rot = stack[0]._rotation;
    stack[0].changerot = (Math.random()*16)-8-stack[0].rot;
    stack[0].onEnterFrame = function() {
    	this.t++;
    	this._x = Math.easeInQuad(this.t, 0, gox, 6);
    	this._y = Math.easeInQuad(this.t, 0, goy, 6);
    	this._rotation = Math.easeInQuad(this.t, this.rot, this.changerot, 6);
    	if (this.t == 7) {
    		this.swapDepths(depth--);
    		this.t = 0;
    		this.onEnterFrame = function() {
    			this.t++;
    			this._x = Math.easeOutQuad(this.t, gox, -gox, 6);
    			this._y = Math.easeOutQuad(this.t, goy, -goy, 6);
    			if (this.t == 6) {
    				delete this.onEnterFrame;
    			}
    		};
    	}
    };
    // Rotate the next image into view
    stack[1]._x = stack[1]._y=0;
    stack[1].t = 0;
    stack[1].rot = stack[1]._rotation;
    stack[1].onEnterFrame = function() {
    	this.t++;
    	this._rotation = Math.easeOutQuad(this.t, this.rot, -this.rot, 6);
    	if (this.t == 6) {
    		delete this.onEnterFrame;
    	}
    };
    // Move top image to the back of the stack array
    var addback = stack.shift();
    stack.push(addback);
};

任何帮助将是很大的AP preciated。

Any help would be greatly appreciated.

谢谢!

推荐答案

好了,所以我决定从旧继续前行1.1脚本我有麻烦,最终只购买的 http://flash-gallery.com/stack-photo-gallery/ 。它拥有一切我需要去完成项目。谢谢您的回答我真的AP preciate它。

Ok so I decided to move on from the old AS 1.1 script I was having trouble with and ended up just purchasing http://flash-gallery.com/stack-photo-gallery/. It has everything I needed to get the project done. Thanks for your answers I really appreciate it.