Помогни ни да направим Uroci.net по - богат! Добави урок

Фон хамелеон за уеб сайтове

arows   трудност:    видян: 17313

За да постигнете ефекта просто копирайте следния код във вашата страница.

<script>

///////////////////////////////////////////////////////////////////////////
Конфигурирането започва от тук
///////////////////////////////////////////////////////////////////////////


// Изберете цветовете (иска се шестнайсетичен цветен код)
//Трябва поне 3 цвята да бъдат избрани

var colors=new Array("#FFFF00","#00FFFF","#5fc700","#854b00","#76e07c","#FFAC00","#FFFF66","#ff0000","#FFFFFF","#850044","#B56AFF","#56B1FF")

// Задайте паузата между смяната на цветовете (секунди)
var pausebetweencolors=2

// Как да бъде запълвана страницата с грейдиант-а. Опции за Internet Explorer 5x или по-новr?
//Задайте "none" или "horizontal" или "vertical" съответно за никакъв, хоризонтален и вертикален

var gradient_effect="horizontal"

// скорост (по-висока=по-ниска)
var speed=20

// Колко пъти да бъде изпълнен скрипта?
// Задайте стойност между 1 и 9999999

var i_loopmax=1000

///////////////////////////////////////////////////////////////////////////
// До тук с настройките
///////////////////////////////////////////////////////////////////////////

// не променяйте по-нататъчния скрипт
var pausesteps=40
var hexc = new Array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F')
var redcol_1
var redcol_2
var redcol_1_b
var redcol_2_b
var greencol_1
var greencol_2
var greencol_1_b
var greencol_2_b
var bluecol_1
var bluecol_2
var bluecol_1_b
var bluecol_2_b

var rgbredfrom
var rgbgreenfrom
var rgbbluefrom
var rgbredto
var rgbgreento
var rgbblueto
var rgbrednow
var rgbgreennow
var rgbbluenow

var rgbredfrom_b
var rgbgreenfrom_b
var rgbbluefrom_b
var rgbredto_b
var rgbgreento_b
var rgbblueto_b
var rgbrednow_b
var rgbgreennow_b
var rgbbluenow_b

var colorhexafrom
var colorhexato

var i_step=1
var i_loop=0
var i_colorsA=0
var i_colorsB=1
var i_colorsC=1
var i_colorsD=2

pausebetweencolors*=1000

var browserinfos=navigator.userAgent
var ie4=document.all&&!document.getElementById
var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/)
var ns4=document.layers
var ns6=document.getElementById&&!document.all
var opera=browserinfos.match(/Opera/)
var browserok=ie4||ie5||ns4||ns6||opera

function translateintorgb() {

var hexa=colors[i_colorsA]
var hexared=hexa.substring(1,3)
var hexagreen=hexa.substring(3,5)
var hexablue=hexa.substring(5,7)
rgbredfrom=parseInt("0x"+hexared)
rgbgreenfrom=parseInt("0x"+hexagreen)
rgbbluefrom=parseInt("0x"+hexablue)
rgbrednow=rgbredfrom
rgbgreennow=rgbgreenfrom
rgbbluenow=rgbbluefrom

var hexa=colors[i_colorsB]
var hexared=hexa.substring(1,3)
var hexagreen=hexa.substring(3,5)
var hexablue=hexa.substring(5,7)
rgbredto=parseInt("0x"+hexared)
rgbgreento=parseInt("0x"+hexagreen)
rgbblueto=parseInt("0x"+hexablue)

var hexa=colors[i_colorsC]
var hexared=hexa.substring(1,3)
var hexagreen=hexa.substring(3,5)
var hexablue=hexa.substring(5,7)
rgbredfrom_b=parseInt("0x"+hexared)
rgbgreenfrom_b=parseInt("0x"+hexagreen)
rgbbluefrom_b=parseInt("0x"+hexablue)
rgbrednow_b=rgbredfrom_b
rgbgreennow_b=rgbgreenfrom_b
rgbbluenow_b=rgbbluefrom_b

var hexa=colors[i_colorsD]
var hexared=hexa.substring(1,3)
var hexagreen=hexa.substring(3,5)
var hexablue=hexa.substring(5,7)
rgbredto_b=parseInt("0x"+hexared)
rgbgreento_b=parseInt("0x"+hexagreen)
rgbblueto_b=parseInt("0x"+hexablue)
i_colorsA++
i_colorsB++
i_colorsC++
i_colorsD++
if (i_colorsA>=colors.length) {i_colorsA=0}
if (i_colorsB>=colors.length) {i_colorsB=0}
if (i_colorsC>=colors.length) {i_colorsC=0}
if (i_colorsD>=colors.length) {i_colorsD=0}

changefromto()
}

function changefromto() {
rgbrednow=rgbrednow-((rgbredfrom-rgbredto)/speed)
rgbgreennow=rgbgreennow-((rgbgreenfrom-rgbgreento)/speed)
rgbbluenow=rgbbluenow-((rgbbluefrom-rgbblueto)/speed)

rgbrednow_b=rgbrednow_b-((rgbredfrom_b-rgbredto_b)/speed)
rgbgreennow_b=rgbgreennow_b-((rgbgreenfrom_b-rgbgreento_b)/speed)
rgbbluenow_b=rgbbluenow_b-((rgbbluefrom_b-rgbblueto_b)/speed)

if (rgbrednow>255) {rgbrednow=255}
if (rgbrednow<0) {rgbrednow=0}
if (rgbgreennow>255) {rgbgreennow=255}
if (rgbgreennow<0) {rgbgreennow=0}
if (rgbbluenow>255) {rgbbluenow=255}
if (rgbbluenow<0) {rgbbluenow=0}

if (rgbrednow_b>255) {rgbrednow_b=255}
if (rgbrednow_b<0) {rgbrednow_b=0}
if (rgbgreennow_b>255) {rgbgreennow_b=255}
if (rgbgreennow_b<0) {rgbgreennow_b=0}
if (rgbbluenow_b>255) {rgbbluenow_b=255}
if (rgbbluenow_b<0) {rgbbluenow_b=0}

if (i_step<=speed) {
redcol_1 = hexc[Math.floor(rgbrednow/16)];
redcol_2 = hexc[Math.floor(rgbrednow)%16];
greencol_1 = hexc[Math.floor(rgbgreennow/16)];
greencol_2 = hexc[Math.floor(rgbgreennow)%16];
bluecol_1 = hexc[Math.floor(rgbbluenow/16)];
bluecol_2 = hexc[Math.floor(rgbbluenow)%16];

redcol_1_b = hexc[Math.floor(rgbrednow_b/16)];
redcol_2_b = hexc[Math.floor(rgbrednow_b)%16];
greencol_1_b = hexc[Math.floor(rgbgreennow_b/16)];
greencol_2_b = hexc[Math.floor(rgbgreennow_b)%16];
bluecol_1_b = hexc[Math.floor(rgbbluenow_b/16)];
bluecol_2_b = hexc[Math.floor(rgbbluenow_b)%16];
var backcolor="#"+redcol_1+redcol_2+greencol_1+greencol_2+bluecol_1+bluecol_2
var backcolor_b="#"+redcol_1_b+redcol_2_b+greencol_1_b+greencol_2_b+bluecol_1_b+bluecol_2_b
if (ie5 && gradient_effect!="none") {
if (gradient_effect=="horizontal") {var gr_effect=1}
if (gradient_effect=="vertical") {var gr_effect=0}
document.body.style.filter=
"progid:DXImageTransform.Microsoft.Gradient(startColorstr="+backcolor+", endColorstr="+backcolor_b+", GradientType="+gr_effect+")"
}
else {
document.bgColor=backcolor
}

i_step++
var timer=setTimeout("changefromto()",pausesteps);

}
else {
clearTimeout(timer)
i_step=1
i_loop++
if (i_loop<i_loopmax) {var timer=setTimeout("translateintorgb()",pausebetweencolors);}
}
}


if (browserok) {
window.onload=translateintorgb
}
</script>

Скрипта е разработен от Peter Gehrig. Всички права запазени (c) 2003 Peter Gehrig. http://www.24fun.com

 



Коментари (10)

mitev1234 на 10.05 2007 в 20:19ч.
Здравейте, аз съм апсолютно начинаещ и като такъв започвам с един може би изключително елементтарен въпрос, а именно : Каква е средата за Java? В смисъл къде се изписват тези алгоритми, които са показани по-горе? Трябва ли да се инсталира някъква програма, каква ...
Благодаря предварително!
P.S. Моля ви се помогнете! Нали все пак трябва да се започне от някъде.
bubust на 10.05 2007 в 23:33ч.
Просто копирай текста и го пейстни в кода на страницата. Изтрий след първите 4 реда(3-те текст и единия празно пространство). За Java Script не ти трябва специална програма, можеш и на обикновен ноутпад да си го пишеш. Аз ти препоръчвам Notepad . Средата е поддържана от всички съвременни браузъри.
spa91 на 01.06 2007 в 00:17ч.
Супер е урока!!!
eXpRess1on на 22.06 2007 в 09:01ч.
А bobust мерси, аз точно това исках да знам - иначе аз си ги пиша на фронт пейдж (Front Page) :)
Witch..king на 25.07 2007 в 22:41ч.
яко стана
dnsh на 27.07 2007 в 12:27ч.
Правиш една грешка.Това не е JAVA a JavaScript.За JavaScript нямаш нужда от среда.Ако искаш да се занимаваш с JAVA виж в http://www.sun.com
Spawn на 09.08 2008 в 11:12ч.
Много яко!И аз съм абсоласютно начинаещ и някои ще може ли да ми каже този script в каква среда е писан?Много се самнявам този които го е писал да го е писал на notepad.
mladendeni на 04.09 2008 в 11:08ч.
Идеално се получава на нотпад. Единствения проблем е че като го отворя ми исписва дали искам да отблокирам блокираното съдържание и като го отблокирам ми се появява ефекта ! Ако някой знае как се оправя това да пише ...
vlp080 на 21.05 2009 в 19:54ч.
Да ама не се получи ако може да ми пратите целия скрипт на skype:t01k0_dr1ft
Tohi на 11.10 2010 в 14:18ч.
това не е урок :С

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: Национален Бизнес | Bomba.bg | IT Новини | Диплома.бг | TRAVEL туризъм | Реферати | AmAm.bg | Иде.ли | Курсови работи | Фото Форум | Spodeli.net | Фото-Култ | Atol.bg | Elmaz.com | MobileBulgaria.com | Казанлък.Com