PDA

View Full Version : Script Java Script


Lord Razor
27-05-2002, 21:35
Asda so che non dovrei ma... mi passate lo script per avere i link con fade di colore :D

GuN_jAcK^
27-05-2002, 21:49
cio? :confused:

cPT_pELLE
28-05-2002, 13:48
cerca su www.html.it pieno di java script scaricabili. (nel caso ti interessasse ci sono anche i manuali per imparare a farseli da soli)

Lord Razor
28-05-2002, 16:34
asda io dicevo lo script dei link di IGz che quando ci passi sopra fanno da grigi a blu!!!

DM Ilweran
28-05-2002, 17:07
Scommetto tutto quello che vuoi che se "studi" 10 minuti 10 un minicorso di javascript riesci a farlo benissimo.
Javascript si appoggia a degli "eventi" tipo onmouseup (mi sembra di ricordare) a cui associ un'azione: in questo caso un cambio progressivo di colore.
Ciuaz

PinkO
28-05-2002, 17:16
onmouseover gnurant :)

thelyn
28-05-2002, 17:20
onmouseup si riferisce al rilascio del tasto sinistro (dopo averlo premuto, mi pare logico ;) )
onmouseover invece l'evento del cursore che passa sull'oggetto.

ah la tauromachia ;)

edit reason: avevo scritto oeover invece di over :awk:

Lord Razor
28-05-2002, 18:01
asda il onmouse over e' una cosa... ma a me interessava sapere come hanno reso il progressivo passaggio!!! (passate sopra un link normale e uno di igz e ditemi!!!!!9

DM Ilweran
28-05-2002, 20:16
Azz
scusate sono solo un umile programmatore C e il javascript non lo so :D
Perch azz non rispondete se lo aspete? gh

Penso usino un ciclo.

thelyn
28-05-2002, 21:00
ma che ti costa fare un po di sano crunching? :)
il modo migliore x imparare, altro ke manuali!

<!-- Javascript dei fading link -->

<script src="fade_hack.js" language="Javascript"></script>

il sorgente contenuto in fade_hack.js, kiedi a mamma igz il xmesso ^^

thelyn
28-05-2002, 21:02
ecco il codice:
(non credo che mamma igz si incacchi, i siti sn fatti x essere crunchati :) )


/*************
**** <config>
**/

fadeColor = "#1D6AA0"; // color to fade to
//fadeColor = "#0";
stepIn = 17; // delay when fading in
stepOut = 25; // delay when fading out

/* set to true or false; true will
** cause all links to fade automatically
** (you won't need to add class="fade")
***/
autoFade = true;

/* set to true or false; true will cause all CSS
** classes with "fade" in them to fade onmouseover
***/
sloppyClass = true;

/* set to true or false; true will make the script
** work for Macs (IE 5+), but you will have to give
** a name (name="blah") to each link that you want
** to fade.
***/
macCompat = false;

/**
**** </config>
**************/

/*************
**** <install>
**

Now, once you have customized your fading colors,
you need to include your customized .js file on
every page that you want to use it in. You can
include javascript files using this syntax (in
the head of a document):

<script src="fade.js" language="Javascript"></script>

Now that you have the file included, you need to
setup your links a small bit. Each link that you
want to fade needs to use the fade class.

Example:

<a href="blah.html" class="fade">click here</a>

Also, the link must be plain text. This means
that you can't have <b>'s, <i>'s, <font>'s, etc.
inside of the link.

Example of what not to do:

<a href="blah.html" class="fade"><b>click</b> here</a>

Have fun!
-Anarchos-

**
**** </install>
**************/

hexa = new makearray(16);
for(var i = 0; i < 10; i++)
hexa[i] = i;
hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
hexa[13]="d"; hexa[14]="e"; hexa[15]="f";

document.onmouseover = domouseover;
document.onmouseout = domouseout;

fadeColor = dehexize(fadeColor.toLowerCase());

var fadeId = new Array();

function dehexize(Color){
var colorArr = new makearray(3);
for (i=1; i<7; i++){
for (j=0; j<16; j++){
if (Color.charAt(i) == hexa[j]){
if (i%2 !=0)
colorArr[Math.floor((i-1)/2)]=eval(j)*16;
else
colorArr[Math.floor((i-1)/2)]+=eval(j);
}
}
}
return colorArr;
}

function domouseover() {
if(document.all){
var srcElement = event.srcElement;
if ((srcElement.tagName == "A" && autoFade && srcElement.className != "nofade") || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1)) {
if (!srcElement.startColor) {
srcElement.startColor = (srcElement.style.color)? srcElement.style.color: srcElement.currentStyle.color;
srcElement.startColor = dehexize(srcElement.startColor.toLowerCase());
}
var link = (macCompat? srcElement.name: srcElement.uniqueID);
if (link) fade(srcElement.startColor,fadeColor,link,stepIn);
else if (macCompat) alert("Error: Mac Compatility mode enabled, but link has no name.");
}
}
}

function domouseout() {
if (document.all){
var srcElement = event.srcElement;
if ((srcElement.tagName == "A" && autoFade && srcElement.className != "nofade") || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1)) {
var link = (macCompat? srcElement.name: srcElement.uniqueID);
if (link) fade(fadeColor,srcElement.startColor,link,stepIn);
}
}
}

function makearray(n) {
this.length = n;
for(var i = 1; i <= n; i++)
this[i] = 0;
return this;
}

function hex(i) {
if (i < 0)
return "00";
else if (i > 255)
return "ff";
else
return "" + hexa[Math.floor(i/16)] + hexa[i%16];
}

function setColor(r, g, b, element) {
var hr = hex(r); var hg = hex(g); var hb = hex(b);
element.style.color = "#"+hr+hg+hb;
}

function fade(s,e,element,step) {
var sr = s[0]; var sg = s[1]; var sb = s[2];
var er = e[0]; var eg = e[1]; var eb = e[2];

if (fadeId[0] != null && fade[0] != element && eval(fadeId[0])) {
var orig = eval(fadeId[0]);
setColor(orig.startColor[0],orig.startColor[1],orig.startColor[2],orig);
var i = 1;
while(i < fadeId.length) {
clearTimeout(fadeId[i]);
i++;
}
}

for(var i = 0; i <= step; i++) {
fadeId[i+1] = setTimeout("setColor(Math.floor(" +sr+ " *(( " +step+ " - " +i+ " )/ " +step+ " ) + " +er+ " * (" +i+ "/" +
step+ ")),Math.floor(" +sg+ " * (( " +step+ " - " +i+ " )/ " +step+ " ) + " +eg+ " * (" +i+ "/" +step+
")),Math.floor(" +sb+ " * ((" +step+ "-" +i+ ")/" +step+ ") + " +eb+ " * (" +i+ "/" +step+ ")),"+element+");",i*step);
}
fadeId[0] = element;
}

DM Ilweran
28-05-2002, 22:36
Dipende dai punti di vista: per me pi utile teoria-leggi codice-scrivi codice.
Poi ho conosciuto gente che ha imparato un linguaggio leggendo esempi e commenti.
Boh, sono gusti.

BraveSpirit il Veggente
29-05-2002, 10:56
VOLETE UN CONSIGLIO SKIETTO?!
FATE COME ME.... io gli script li copio, e poi li adatto. Per es, tu vuoi lo script di igz x il mouse giusto? Bene... salvati la pagina, poi la apri col tuo programma con cui fai siti (io uso Macromedia Dreaamweaver) e l ti riconosce automaticamente gli scirpt. Poi li guardi e capisci subito quali sono, poi li adatti et voil. i gioco fatto.

thelyn
29-05-2002, 14:09
il principio x imparare quello, ma sei fai solo copia & incolla nn impari niente..

DM Ilweran
29-05-2002, 15:45
Vuoi un consiglio schietto?
Cos non diventi webmaster gh :D

Lord Razor
29-05-2002, 16:00
azz io ho crunchato e ho visto lo script che diceva quale era il il source... e infatti ho postato qui sperando che mi passaste il codice del source...
(grazie thelyn)... mazza e' lungo pero...

thelyn
29-05-2002, 16:00
beh manuali e tutorials vanno utilizzati sempre.
di certo un esempio vale mille parole ;)

DM Ilweran
29-05-2002, 18:37
Mica dicevo a te io :drool:

Lord Razor
30-05-2002, 15:46
cazz.. non riesco a implementarlo nella pagina...