|
|
#1 |
|
沙漠孤鹰
![]() ![]() ![]() ![]()
|
经常看到一些网站变化整个背景,比较有视觉冲击力。从前只是制作一个MC放置在底层,然对它指定色彩。现在有简单的办法了,不需在创建MC什么的。可以使文件更小,更易用。 flashmx2004 AS 渐进式变化背景 演示: 代码: 代码:
function bgColor(rgb, alpha){
//如果没有参数,则返回不执行任何代码:
if (arguments.length == 0) {
return;
}
// 如是alpha为空则alpha默认为100
if (!alpha) {
alpha = 100;
}
// 创建长宽两个变量用于后面的绘画添充。取屏幕的长宽。
this._w = Stage.width;
this._h = Stage.height;
// 设定色彩
this.rgb = "0x"+substring(rgb, 2, 6);
//设定新的alpha变量,用于与参数比较,渐进式变化。
this.newalpha=0;
onEnterFrame = function () {
if(this.newalpha<alpha) {
this.newalpha = this.newalpha+5;
trace(this.newalpha);
// 绘制添充
with (this) {
beginFill(this.rgb, this.newalpha);
moveTo(0, 0);
lineTo(this._w, 0);
lineTo(this._w, this._h);
lineTo(0, this._h);
lineTo(0, 0);
endFill;
}
};
};
}
// ? 执行函数
bgColor("#0000ff",50);
源文件下载: |
|
|
|
|
|
#2 |
|
高级会员
![]() ![]()
|
这个源文件是不是没有改变bgColor? 只是在上面绘制了一个色块? 绘制的这个过程只是在stage上进行,不会遮盖舞台上的其他元件 ? 概念不清,请坛主指教 ! |
|
|
|
|
|
#3 |
|
沙漠孤鹰
![]() ![]() ![]() ![]()
|
不会遮盖,只要其它元素的深度值大一些。其实现在你也见到了,上面字,不就是没遮盖吗。
|
|
|
|
|
|
#4 |
|
高级会员
![]() ![]()
|
恩,只是对层次的概念不是很清楚。
|
|
|
|