معاينة التأثير :
<!DOCTYPE html>
<html xmlns=" http://www.w3.org/1999/xhtml ">
<الرأس>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>تدرج لون جافا سكريبت وتأثيرات التدرج</title>
<نوع البرنامج النصي = "نص/جافا سكريبت">
eval(function(p,a,c,k,e,r){e=function(c){return(c<62?'':e(parseInt(c/62)))+((c=c% 62)>35?String.fromCharCode(c+29):c.toString(36))};if('0'.replace(0,e)==0){while(c--)r[e( c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'([3-59cf-hj-mo-rt-yCG- NP-RT-Z]|[12]\w)'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\b'+ e(c)+'\b','g'),k[c]);return p}('5 $$,$$B,$$A,$$F,$$D,$$E ,$$S;(3(){5 O,B,A,F,D,E,S;O=3(id){4"1L"==1t id?P.getElementById(id):id} ;O.extend=3(G,10){H(5 QR 10){G[Q]=10[Q]}4 G};O.deepextend=3(G,10){H(5 QR 10) {5 17=10[Q];9(G===17)تابع;9(1t 17==="c"){G[Q]=I.callee(G[Q]||{},17 )}J{G[Q]=17}}4 G};B=(3(K){5 ب={11:/11/.x(K)&&!/1u/.x(K),1u :/1u/.x(K),1M:/webkit/.x(K)&&!/1v/.x(K),1N:/1N/.x(K),1v:/1v/.x( K)};5 1i="";H(5 i R b){9(b[i]){1i="1M"==i؟"18":i;19}}b.18=1i&&1w( "(?:"+1i+")[\\/: ]([\\d.]+)").x(K)?1w.$1:"0";b.ie=b. 11;b.1O=b.11&&1y(b.18)==6;b.ie7=b.11&&1y(b.18)==7;b.1P=b.11&&1y(b.18)==8; 4 b})(1z.navigator.userAgent.toLowerCase());A=3(){5 l={isArray:3(1Q){4 Object.1R.toString.L(1Q)==="[c 1S]"},1A:3(C,12,p){9(C.1A){4 C.1A(12)}J{5 M=C.1a;p=1T(p)?0 :( p<0)?1j.1U(p)+M:1j.1V(p);H(;p<M;p++){9(C[i]===12)4 i}4-1}} ,1B:3(C,12,p){9(C.1B){4 C.1B(12)}J{5 M=C.1a;p=1T(p)||p>=M-1 ?M-1:p<0?1j.1U(p)+M:1j.1V(p);H(;p>-1;p--){9(C[i]===12)4 i}4-1}}};3 X(c,q){9(undef===c.1a){H(5 f R c){9(w===q(c[f],f ,c))19}}J{H(5 i=0,M=c.1a;i<M;i++){9(i R c){9(w===q(c[i],i ,c))19}}}};X({1W:3(c,q,j){XL(j,c,3(){qY(j,I)})},map:3(c, q,j){5 l=[];XL(j,c,3(){l.1X(qY(j,I))});4 l},1k:3(c,q,j){ 5 l=[];XL(j,c,3(1Y){qY(j,I)&&l.1X(1Y)});4 l},every:3(c,q,j){5 l= 1b; =w;XL(j,c,3(){9(qY(j,I)){l=1b;4 w}});4 l}},3(1Z,f){l[f ]= 3(c,q,j){9(c[f]){4 c[f](q,j)}J{4 1Z(c,q,j)}}});4 l}( ); F=(3(){5 1c=1S.1R.1c;4{bind:3(1l,j){5 1m=1c.L(I,2);4 3(){4 1l.Y) (j ,1m.20(1c.L(I)))}},bindAsEventListener:3(1l,j){5 1m=1c.L(I,2);4 3(g){4 1l.Y( j, [E.1d(g)].20(1m))}}}})();D={1n:3(m){5 13=m?m.21:P;4 13.22.23| |13.24 .23},1o:3(m){5 13=m?m.21:P;4 13.22.25||13.24.25},1C:3(a,b){4(u.1C= أ. 26?3(a,b){4!!(a.26(b)&16)}:3(a,b){4 a!=b&&a.1C(b)})(a,b)} ,v :3(m){5 o=0,N=0,T=0,U=0;9(!m.27||B.1P){5 n=m;while(n){o+= n.offsetLeft,N+=n.offsetTop;n=n.offsetParent};T=o+m.offsetWidth;U=N+m.offsetHeight}J{5 v=m.27();o=T=u. 1o( m);N=U=u.1n(m);o+=vo;T+=vT;N+=vN;U+=vU};4{"o":o,N":N,"T" :T "U":U}},clientRect:3(m){5 v=uv(m),1D=u.1o(m),1E=u.1n(m);vo-=1D;vT -= 1D;vN-=1E;vU-=1E;4 v},28:3(k){4(u.28=P.1p?3(k){4 P.1p.29(k,2a) )} :3(k){4 k.1q})(k)},2b:3(k,f){4(u.2b=P.1p?3(k,f){5 h=P. 1p.29(k,2a);4 f R h?h[f]:h.getPropertyValue(f)}:3(k,f){5 h=k.1q;9(f=="Z") {9 (/1F\(Z=(.*)\)/ix(h.1k)){5 Z=parseFloat(1w.$1);4 Z?Z/2c:0}4 1};9 (f ==="2d"){f="2e"}5 l=h[f]||h[S.1G(f)];9(!/^\-?\d+(px) ?$/ التاسع(ل)&&/^\-?\d/.x(l)){h=kh,o=ho,2g=k.1H.o;k.1H.o=k.1q .o; ho=l||0;l=h.pixelLeft+"px";ho=o;k.1H.o=2g}4 l})(k,f)},setStyle:3(1e,h, 14){ 9(!1e.1a){1e=[1e]}9(1t h=="1L"){5 s=h;h={};h[s]=14}A.1W(1e) ,3( ك){H(5 f R h){5 14=h[f];9(f=="Z"&&B.ie){kh1k=(k.1q.1k||"").2h (/1F \([^)]*\)/,"")+"1F(Z="+14*2c+")"}J 9(f=="2d"){kh[B.ie ؟"2e ":":"cssFloat"]=14}J{kh[S.1G(f)]=14}}})}};E=(3(){5 1f,1g,15=1;9( 1z.2i ){1f=3(r,t,y){r.2i(t,y,w)};1g=3(r,t,y){r.removeEventListener(t,y,w)} }J{ 1f=3(r,t,y){9(!y.$$15)y.$$15=15++;9(!rV)rV={};5 W=rV[t];9 (!W ){W=rV[t]={};9(r["on"+t]){W[0]=r["on"+t]}}W[y.$$15]= y;r ["on"+t]=1r};1g=3(r,t,y){9(rV&&r.V[t]){delete rV[t][y.$$15]}};3 1r() {5 1s=1b,g=1d();5 W=uV[gt];H(5 i RW){u.$$1r=W[i];9(u.$$1r(g )== =w){1s=w}}4 1s}}3 1d(g){9(g)4 g;g=1z.g;g.pageX=g.clientX+D.1o();g .pageY= g.clientY+D.1n();g.target=g.srcElement;g.1J=1J;g.1K=1K;switch(gt){2j"mouseout":g.2k=g.toElement ;19; 2j"mouseover":g.2k=g.fromElement;19};4 g};3 1J(){u.cancelBubble=1b};3 1K(){u.1s=w};4{" 1f": 1f,"1g":1g,"1d":1d}})();S={1G:3(s){4 s.2h(/-([az])/ig,3(all ,2l) {4 2l.toUpperCase()})}};9(B.1O){try{P.execCommand("BackgroundImageCache",w,1b)}catch(e){}};$$=O; $$B =B;$$A=A;$$F=F;$$D=D;$$E=E;$$S=S})();',[],146,'|| |وظيفة|return|var||||if||object|||اسم|حدث|نمط||thisp|elem|ret|عقدة||يسار|من|رد الاتصال|عنصر||نوع|هذا|مستقيم|خطأ| اختبار|المعالج||||المصفوفة|||الوجهة|ل|الوسائط|آخر|ua|استدعاء|لين|أعلى||مستند|خاصية|في||يمين|أسفل|أحداث|معالجات|كل|تطبيق|عتامة|مصدر. |msie|elt|doc|قيمة|guid||نسخ|إصدار|فاصل|طول|صحيح|شريحة|fixEvent|elems|addEvent|removeEvent||vMark|Math|filter|fun|args|getScrollTop|getScrollLeft|defaultView|currentStyle. |.handleEvent|returnValue|typeof|opera|chrome|RegExp||parseInt|window|indexOf|lastIndexOf|يحتوي على|sLeft|sTop|alpha|camelize|runtimeStyle||stopPropagation|preventDefault|string|safari|firefox|ie6|ie8|obj. |. rsLeft |استبدال|addEventListener|الحالة|الهدف المرتبط|letter'.split('|'),0,{}))
</script>
<نوع البرنامج النصي = "نص/جافا سكريبت">
// احصل على طريقة التدرج اللوني
فار ColorGrads = (وظيفة(){
// احصل على بيانات التدرج اللوني
وظيفة GetStep (البدء، النهاية، الخطوة) {
فار الألوان = []، البداية = GetColor(البداية)، النهاية = GetColor(النهاية)،
stepR = (النهاية[0] - البداية[0]) / الخطوة،
الخطوةG = (النهاية[1] - البداية[1]) / الخطوة،
stepB = (end[2] - start[2]) / step;
// إنشاء مجموعة الألوان
for(var i = 0, r = start[0], g = start[1], b = start[2]; i < step; i++){
color[i] = [r, g, b];
}
الألوان[i] = النهاية؛
// قيمة اللون الصحيحة
إرجاع $$A.map(colors, function(x){ إرجاع $$A.map(x, function(x){
return Math.min(Math.max(0, Math.floor(x))), 255);
});});
}
// احصل على بيانات اللون
جزء فار؛
وظيفة GetColor(اللون) {
var ret = GetData(color);
إذا (رجع === غير محدد) {
إذا (! فراج) {
frag = document.createElement("textarea");
frag.style.display = "لا شيء";
document.body.insertBefore(frag, document.body.childNodes[0]);
};
حاول { frag.style.color = color } Catch(e) { return [0, 0, 0];
إذا (document.defaultView) {
//أوبرا #rrggbb
ret = GetData(document.defaultView.getComputedStyle(frag, null).color);
} آخر {
color = frag.createTextRange().queryCommandValue("ForeColor");
ret = [ اللون & 0x0000ff, (اللون & 0x00ff00) >>> 8, (اللون & 0xff0000) >>> 16 ];
}
}
عودة متقاعد؛
}
// احصل على مجموعة الألوان
وظيفة GetData(اللون) {
var re = RegExp;
إذا (/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i.test(color)) {
//#rrggbb
إرجاع $$A.map([ re.$1, re.$2, re.$3 ], function(x){
إرجاع parseInt(x, 16);
});
} else if (/^#([0-9a-f])([0-9a-f])([0-9a-f])$/i.test(color)) {
//#rgb
إرجاع $$A.map([ re.$1, re.$2, re.$3 ], function(x){
إرجاع parseInt(x + x, 16);
});
} else if (/^rgb((.*),(.*),(.*))$/i.test(color)) {
// rgb(n,n,n) أو rgb(n%,n%,n%)
إرجاع $$A.map([ re.$1, re.$2, re.$3 ], function(x){
إرجاع x.indexOf("%") > 0 ? parseFloat(x, 10) * 2.55 : x | 0;
});
}
}
وظيفة الإرجاع (الألوان، الخطوة) {
var ret = []، len =colors.length;
إذا (الخطوة === غير محددة) {الخطوة = 20}؛
إذا (لين == 1) {
ret = GetStep(colors[0],colors[0],step );
} وإلا إذا (لين > 1) {
for(var i = 0, n = len - 1; i < n; i++){
varخطوات = GetStep(colors[i],colors[i+1], step );
أنا < ن - 1 && الخطوات.pop();
ret = ret.concat(steps);
}
}
عودة متقاعد؛
}
})();
// كائن متدرج
فار ColorTrans = وظيفة(عنصر، خيارات){
this._elem = $$(elem);
this._timer = null;//Timer
this._index = 0;//Index
this._colors = [];// مجموعة الألوان
this._options = {};// كائن المعلمة
this._setOptions(options);
this.speed = Math.abs(this.options.speed);
this.style = this.options.style;
هذا.إعادة تعيين({
من: this.options.from || $$D.getStyle(this._elem, this.style),.
إلى: this.options.to،
الخطوة: Math.abs(this.options.step)
});
this._set();
};
ColorTrans.prototype = {
// تعيين الخصائص الافتراضية
_setOptions: الوظيفة(خيارات) {
this.options = {// القيمة الافتراضية
من: ""،// لون البداية (قيمة فارغة افتراضية لتسهيل الاكتساب التلقائي)
إلى: "#000"،//لون النهاية
الخطوة: 20,//سلسلة التدرج
السرعة: 20 // سرعة متدرجة
النمط: "اللون"//تعيين السمات (سمات البرمجة النصية)
};
$$.extend(this.options, options || {});
},
// إعادة تعيين مجموعة الألوان
إعادة التعيين: الوظيفة (خيارات) {
// قم بتعيين الخصائص وفقًا للمعلمات
this._options = options = $$.extend( this._options, options || {} );
// احصل على مجموعة الألوان
this._colors = ColorGrads( [ options.from, options.to ], options.step );
this._index = 0;
},
// اللون يتلاشى
ترانس إن: وظيفة () {
this.stop(); this._index++; this._set();
إذا(this._index < this._colors.length - 1){
this._timer = setTimeout($$F.bind( this.transIn, this ), this.speed);
}
},
// اللون يتلاشى
التحويل: الوظيفة () {
this.stop(); this._index--;
إذا (هذا._index > 0){
this._timer = setTimeout($$F.bind( this.transOut, this ), this.speed);
}
},
// إعدادات اللون
_مجموعة: وظيفة () {
فار اللون = this._colors[Math.min(Math.max(0, this._index), this._colors.length - 1)];
this._elem.style[this.style] = "rgb(" + color.join("،) + ")";
},
//قف
توقف: وظيفة () {
ClearTimeout(this._timer);
}
};
</script>
</الرأس>
<الجسم>
<نمط النوع = "نص/CSS">
#idGrads div{height:1px;overflow:hidden;}
</نمط>
مظاهرة تغيير التدرج اللوني:
<div id="idGrads"> </div>
<ر/>
<input id = "idGradsColor" type = "text" value = "green"/>
<input id = "idGradsSet" type = "button" value = "ضبط اللون">
<النص البرمجي>
($$("idGradsSet").onclick = function(){
varcolors = ColorGrads( ["#fff", $$("idGradsColor").value], 50 );
$$("idGrads").innerHTML = $$A.map(colors.concat().concat(colors.reverse()), function(x){
return "<div style='background:rgb(" + x.join("،") + ")'></div>";
}).ينضم("")؛
})()
</script>
<ر/>
<ر/>
<نمط النوع = "نص/CSS">
#idPicker ul{float:left;}
#idPicker li{overflow:hidden;width:10px;height:10px;line-height:0;font-size:0;}
#idPicker li.on{width:8px;height:8px border:1px Solid #000;}
#idPicker ul، #idPicker li{list-style:none;margin:0;padding:0;}
#idPicker:after{content:".";display:block;visibility:hidden;height:0;clear:كلاهما;}
#idPicker{تكبير/تصغير:1;}
</نمط>
منتقي الألوان البسيط: <Br />
اختر اللون: <span id="idPickerShow"> </span>
<div id="idPicker"> </div>
<النص البرمجي>
$$("idPicker").innerHTML = "<ul>" +
$$A.map(ColorGrads( ["أحمر"، "أصفر"، "أزرق"]، 10 )، function(x){
إرجاع $$A.map(ColorGrads( ["#fff"، "rgb(" + x.join("،") + ")" ,"#000"], 10 ),
وظيفة (خ) {
return "<li style='background:rgb(" + x.join("،") + ")'></li>";
}
).ينضم("")؛
}).join("</ul><ul>") + "</ul>";
var oPickerShow = $$("idPickerShow");
$$A.forEach($$("idPicker").getElementsByTagName("li"), function(li){
li.onmouseover = function(){
this.className = "on";
oPickerShow.innerHTML = oPickerShow.style.backgroundColor
= this.style.backgroundColor;
}
li.onmouseout = function(){ this.className = "";
})
</script>
<ر/>
<ر/>
<نمط النوع = "نص/CSS">
#idMenu{ الخلفية:#DBDBDB;text-align:center;line-height:25px;
#idMenu td{ cursor:pointer color:#666;
</نمط>
قائمة التدرج اللوني:
<معرف الجدول = "idMenu" العرض = "600" الحدود = "0" تباعد الخلايا = "5" خلية الحشو = "0">
<تر>
<td> <a href=" http://www.cnblogs.com/cloudgamer/archive/2008/07/21/ImgCropper.html">كروبر</a></td >
<td> <a href=" http://www.cnblogs.com/cloudgamer/archive/2009/01/06/Tween.html">توين</a></td >
<td> <a href=" http://www.cnblogs.com/cloudgamer/archive/2008/12/24/Slider.html">شريط التمرير</a></td >
<td> <a href=" http://www.cnblogs.com/cloudgamer/archive/2008/12/03/Resize.html">تغيير الحجم</a></td >
<td> <a href=" http://www.cnblogs.com/cloudgamer/archive/2008/11/17/Drag.html">السحب</a></td >
<td> <a href=" http://www.cnblogs.com/cloudgamer/archive/2009/07/07/FixedTips.html">تلميحات الأدوات</a></td >
</tr>
</الجدول>
<النص البرمجي>
$$A.forEach($$("idMenu").getElementsByTagName("td"), function(x, i){
var a = x.getElementsByTagName("a")[0], href = a.href, txt = a.innerHTML;
x.onclick = function(){ location.href = href };
x.innerHTML = txt;
var ct1 = new ColorTrans(x, { to: "white" });
var ct2 = new ColorTrans(x, { to: "rgb(20,150,0)"، النمط: "backgroundColor" });
x.onmouseover = function(){ ct1.transIn();
x.onmouseout = function(){ ct1.transOut();
})
</script>
<ر/>
<ر/>
<نمط النوع = "نص/CSS">
#idRandom{padding:10px الخلفية:#CCC؛}
</نمط>
انقر على التدرج اللوني العشوائي:
<div id="idRandom"><b>انقر لتغيير اللون عشوائيًا</b></div>
<النص البرمجي>
var ctRandom = new ColorTrans("idRandom", { style: "backgroundColor" }),
ctRandom2 = new ColorTrans("idRandom");
$$("idRandom").onclick = function(){
var rgb = $$A.map([1,1,1], function(){ return Math.floor((Math.random() * 255)); } ),
rgb2 = $$A.map(rgb, function(x){ return 255 - x; } );
ctRandom.reset({ من: this.style.backgroundColor، إلى: "rgb(" + rgb.join("،") + ")" })
ctRandom.transIn();
ctRandom2.reset({ من: this.style.color، إلى: "rgb(" + rgb2.join("،") + ")" })
ctRandom2.transIn();
}
</script>
</الجسم>
</html>