Pagina 1 di 11 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 101
  1. #1

    [mackey pillola 1] Tips&Tricks in DHTML

    Ciao a tutti!
    è un po di tempo che pensavo di scrivere una pillolina su una raccolta di script realizzati da me.
    Entrando su questo forum trovo spesso delle domande ripetitive alle quali talvolta corrispondono delle risposte vaghe.
    Gli obiettivi di questa pillola sono sia aiutare i nuovi webmaster a realizzare qualcosa di semplice e utile, ma anche
    stimolare i più esperti a migliorare questi script. Spero vogliate scusarmi se magari divago un po' fra gli argomenti,
    ma mi sembrava poco fare una pillola su un solo script.
    Fatte queste premesse possiamo iniziare con il primo.


    __________________________________________________ ___________________________


    1) Funzione per numeri random
    compatibile con: Internet Explorer, Netscape, Opera
    Questa funzione è strettamente legata alla pillola di Reale_Augello.

    - Descrizione
    restituisce un numero pseudocasuale compreso fra gli estremi specificati. Se si specifica solo un estremo per default
    il valore di ritorno sarà compreso tra zero e l'estremo specificato.

    - Funzione
    Questo script va copiato e incollato nell'HEAD della pagina, oppure incluso in un file esterno e richiamato dalla pagina.
    codice:
    <script>
    
    function random(inf,sup) {
    	if(sup==undefined) sup=0;
    	ext = sup - inf;
    	rand = Math.round(Math.random()*ext);
    	rand += inf;
    	return rand;
    }
    
    </script>
    - Sintassi di chiamata
    random(inferiore [, superiore])
    inferiore (obbligatorio): valore numerico. indica l'estremo dal quale partire. Se non è indicato l'estremo superiore
    il numero casuale sarà compreso tra 0 e inferiore.

    - Esempio: Immagini casuali
    Immaginiamo di avere delle immagini numerate da 7 a 15 in questo modo: img7.jpg, img8.jpg, ... , img15.jpg.
    vogliamo che al centro della pagina venga caricata un'immagine di queste in maniera casuale:
    codice:
    <script>
    	var numimg = random(7,15);
    	/* chiama la funzione random specificando gli estremi 7 e 15 e mette il valore di ritorno in numimg */
    	document.writeln("<img src=\"img"+numimg+".jpg\">");
    </script>
    facile no?




    __________________________________________________ ___________________________


    2) Funzione per la conversione di base
    compatibile con: Internet Explorer, Netscape, Opera
    In javascript (che io sappia) non esiste una funzione per convertire un numero da una base ad un'altra base.
    Vedremo un applicazione di questa funzione più avanti.

    - Descrizione
    Restituisce una stringa corrispondente al numero convertito da base_partenza a base_arrivo.
    Sia base_partenza che base_arrivo devono essere compresi fra 2 e 36, inclusi.

    - Funzione
    Questo script va copiato e incollato nell'HEAD della pagina, oppure incluso in un file esterno e richiamato dalla pagina.
    codice:
    <script>
    function baseconv(str_conv, base1, base2) {
    	if(base1==base2) return str_conv;
    	return baseconv1(baseconv2(str_conv,base1),base2);
    }
    
    function baseconv1(str_conv, base) {
    	valarray = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    	if(str_conv >= base) return baseconv1(Math.floor(str_conv / base),base)+valarray.charAt(str_conv % base);
    	else return valarray.charAt(str_conv);
    }
    
    function baseconv2(str_conv, base) {
    	valarray = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var ris=0;
    	for(i=0; i<str_conv.length; i++) ris += valarray.indexOf(str_conv.charAt(i).toUpperCase())*Math.pow(base,str_conv.length-1-i);	
    	return ris;
    }
    </script>
    - Sintassi di chiamata
    baseconv("numero", base_partenza, base_arrivo)
    numero (obbligatorio): il numero da convertire. Deve essere compreso fra apici (singoli o doppi).
    base_partenza (obbligatorio): la base del numero specificato.
    base_arrivo (obbligatorio): la base in cui si vuole convertire il numero.

    - Esempio
    codice:
    <script>
    	alert("255 da base 10 a base 16= "+baseconv("255",10,16));
    	alert("FF da base 16 a base 10= "+baseconv("FF",16,10));
    </script>



    __________________________________________________ ___________________________


    3) Slideshow di Immagini
    compatibile con: Internet Explorer, Netscape
    Utile script per gestire un'immagine che cambia dinamicamente ogni tot secondi specificati

    - Funzione
    Basta copiare e incollare questo script nel punto della pagina dove andrà l'immagine.
    La variabile secondi indica il numero di secondi che intercorrono tra un'immagine e l'altra.
    Per inserire una nuova immagine basta aggiungere una riga analoga alle altre dove è indicato il percorso delle immagini.
    codice:
    <script>
    var foto = new Array;
    var secondi = 5;
    
    foto[foto.length]= "immagine.jpg";
    foto[foto.length]= "prova.jpg";
    foto[foto.length]= "imggif.gif";
    foto[foto.length]= "logo.jpg";
    
    
    var numft = 1;
    document.writeln("<img name=\"imgmain\" src=\""+foto[numft-1]+"\" onload=\"setTimeout('slideshow()',"+secondi+"000)\">");
    
    function slideshow() {
    if(numft==foto.length) numft=0;
    numft++;
    document.imgmain.src = foto[numft-1];
    }
    </script>

    è più facile di quanto sembri... buon divertimento




    __________________________________________________ ___________________________


    4) Rollover senza attesa
    compatibile con: Internet Explorer, Netscape
    Ecco una soluzione per risolvere il problema dell'attesa di un rollover su un'immagine. Infatti quando si fa un rollover
    (a meno che non sia fatto con flash) dobbiamo aspettare il caricamento dell'immagine e nonostante tutto l'effetto non è
    quello desiderato, proprio perchè sono passati diversi secondi da quando eravamo andati col puntatore sopra l'immagine!
    La mia può essere una soluzione valida, perchè al passaggio del mouse non chiede il caricamento dell'immagine, ma
    solamente la visualizzazione.

    - Funzione
    Questo script va copiato e incollato nell'HEAD della pagina, oppure incluso in un file esterno e richiamato dalla pagina.
    codice:
    <script>
    var style = "<STYLE TYPE=\"text/css\">.hide {visibility: hidden;position:absolute;top:0;left:0;}"+
    	".show {visibility: visible;border: none;}</STYLE>";
    document.writeln(style);
    
    var idimg=0;
    function rollover(imgout,imgon) {
    	idimg++;
    	idimg="img"+idimg;
    	var imag = "<img src=\""+imgout+"\" class=\"show\" id=\""+idimg+"_out\""+
    		"onmouseover=\"changeimg("+idimg+"_out,"+idimg+"_on)\"><img src=\""+imgon+"\""+
    		"class=\"hide\" id=\""+idimg+"_on\" onmouseout =\"changeimg("+idimg+"_on,"+idimg+"_out)\">";
    	document.write(imag);
    	}
    
    function changeimg(img1,img2) {
    	img1.className="hide";
    	img2.className="show";
    	}
    </script>
    - Sintassi di chiamata
    rollover("percorso_immagine1" , "percorso_immagine2");
    percorso_immagine1 (obbligatorio): percorso dell'immagine di default
    percorso_immagine2 (obbligatorio): percorso dell'immagine di rollover

    - Esempio: link e rollover
    <script>rollover("immagini/html_it.gif","immagini/html_it_up.gif");</script>




    __________________________________________________ ___________________________


    5) Sfondo Pagina casuale
    compatibile con: Internet Explorer, Netscape, Opera
    Anche questo script è strettamente legato alla pillola di Reale_Augello.

    --- # Colore di sfondo casuale # ---
    Applicheremo in questo script le precedenti funzioni di random e di conversione di base.

    - Descrizione
    Questo script determina un colore di sfondo del tutto casuale ad ogni apertura ed aggiornamento della pagina. Ad ogni
    colore di sfondo viene stabilito il colore del testo di tutta la pagina, a meno che non dipenda da uno style.

    - Funzione
    Questo script va copiato e incollato nell'HEAD della pagina, oppure incluso in un file esterno e richiamato dalla pagina.
    codice:
    <script>
    function baseconv(str_conv, base1, base2) {
    	if(base1==base2) return str_conv;
    	return baseconv1(baseconv2(str_conv,base1),base2);
    }
    
    function baseconv1(str_conv, base) {
    	valarray = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    	if(str_conv >= base) return baseconv1(Math.floor(str_conv / base),base)+valarray.charAt(str_conv % base);
    	else return valarray.charAt(str_conv);
    }
    
    function baseconv2(str_conv, base) {
    	valarray = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var ris=0;
    	for(i=0; i<str_conv.length; i++) ris += valarray.indexOf(str_conv.charAt(i).toUpperCase())*Math.pow(base,str_conv.length-1-i);	
    	return ris;
    }
    
    function hex(strhex) {
    	return baseconv(""+strhex,10,16);
    }
    
    function random(inf,sup) {
    	if(sup==undefined) sup=0;
    	ext = sup - inf;
    	rand = Math.round(Math.random()*ext);
    	rand += inf;
    	return rand;
    }
    
    function bgrandom() {
    	r= hex(random(255));
    	g= hex(random(255));
    	b= hex(random(255));
    	if(r.length==1) r = "0"+r;
    	if(g.length==1) g = "0"+g;
    	if(b.length==1) b = "0"+b;
    	document.body.style.backgroundColor = "#"+r+g+b;
    	document.body.style.color = baseconv(r+g+b,16,10)<8000000? "#FFFFFF":"#000000";
    	window.status="BGCOLOR = #"+r+g+b;
    }
    window.onload=bgrandom;
    </script>
    --- # Immagine di sfondo casuale # ---

    - Descrizione
    Data una lista di immagini lo script ne sceglie una in maniera casuale e la imposta come sfondo della pagina.
    L'operazione viene effettuata ad ogni caricamento e aggiornamento di pagina.

    - Funzione
    Questo script va copiato e incollato nell'HEAD della pagina, oppure incluso in un file esterno e richiamato dalla pagina.
    codice:
    <script>
    function random(inf,sup) {
    	if(sup==undefined) sup=0;
    	ext = sup - inf;
    	rand = Math.round(Math.random()*ext);
    	rand += inf;
    	return rand;
    }
    
    function sfrandom() {
    	var sfondo = new Array;
    
    	sfondo[sfondo.length]= "immagine.jpg";
    	sfondo[sfondo.length]= "prova.jpg";
    	sfondo[sfondo.length]= "imggif.gif";
    	sfondo[sfondo.length]= "logo.jpg";
    
    	num_img=random(sfondo.length-1);
    	document.body.background=sfondo[num_img];
    }
    window.onload=sfrandom;
    </script>
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  2. #2
    6) Menu a tendina
    compatibile con: Internet Explorer, Netscape, Opera
    Molto utile se volete fare un menu riassuntivo delle vostre pagine. Niente di nuovo, volevo soltanto proporlo fra gli
    script utili.

    - Descrizione
    Un semplice menu che al click rimanda alla pagina specificata con la possibilità di specificare il target

    - Codice
    Lo style non è obbligatorio (è solo per vedere come si può formattare una SELECT), basta copiare la SELECT nel punto
    della pagina in cui vogliamo che appaia.
    codice:
    <style>
    .menut {
    	background: #C0C0C0;
    	font-color: #EEEEEE;
    	font-family: verdana;
    	font-size: 8pt;
    	font-weight: bold;
    }
    </style>
    <select onchange="self.location.href=this.value;" class="menut">
    
    <option value="javascript:void(0);"> # MENU #
    <option value="bgColorand.htm">BgColor Random
    <option value="colori.htm">Colori
    <option value="pillola.htm">La pillola
    <option value="stringhe.htm">Stringhe
    <option value="pagina1.htm">Include
    
    </select>
    - Funzionamento
    Lasciare invariata la prima OPTION (a limite cambiare la scritta # MENU #), le altre si modificano nel seguente modo:
    value indica il percorso della pagina da raggiundere, alla chiusura del tag possiamo mettere la descrizione.
    Nella prima riga (..select onchange...), self indica il target da raggiungere... in questo caso indica la stessa finestra.




    __________________________________________________ ___________________________


    7) Menu su tasto destro del mouse
    compatibile con: Internet Explorer, Netscape, Opera

    - Descrizione
    Un semplice menu sul tasto destro del mouse. &Egrave; supportato anche da Opera, con la sola differenza che si apre con un doppio click anzichà con il tasto destro.

    - Codice
    Questo script va copiato e incollato nell'HEAD della pagina, oppure incluso in un file esterno e richiamato dalla pagina.
    codice:
    <script>
    var vocimenu = new Array;
    var links = new Array;
    var bgc = navigator.appName.indexOf("Opera")==-1 ? "MENU" : "#F7F7F0";
    var col = navigator.appName.indexOf("Opera")==-1 ? "MENUTEXT" : "#000000";
    var bgc_over = navigator.appName.indexOf("Opera")==-1 ? "HIGHLIGHT" : "#20AF10";
    var col_over = navigator.appName.indexOf("Opera")==-1 ? "HIGHLIGHTTEXT" : "#FFFFFF";
    
    vocimenu[vocimenu.length] = "Indietro";
    vocimenu[vocimenu.length] = "Avanti";
    vocimenu[vocimenu.length] = "Imposta come Homepage";
    vocimenu[vocimenu.length] = "Aggiungi a Preferiti";
    vocimenu[vocimenu.length] = "HTML";
    vocimenu[vocimenu.length] = "Stampa";
    vocimenu[vocimenu.length] = "Aggiorna";
    vocimenu[vocimenu.length] = "WebMaster";
    vocimenu[vocimenu.length] = "@ E-mail";
    
    links[links.length] = "HTML.IT, http://www.html.it/";
    links[links.length] = "pagina 2, ../pagina2.htm";
    links[links.length] = "GOOGLE.IT, http://www.google.it/";
    links[links.length] = "Tiscali, http://www.tiscali.it/";
    
    document.writeln(""
    +"<STYLE>"
    +"#contextMenu {"
    +"	position: absolute;"
    +"	visibility: hidden;"
    +"	border: double 3px BUTTONFACE;"
    +"	background: "+bgc+";"
    +"	color: "+col+";"
    +"}"
    +".menu {"
    +"	padding-left: 15px;"
    +"	width: 100%;"
    +"	height: 25px;"
    +"	background: "+bgc+";"
    +"	color: "+col+";"
    +"	font-family: Verdana, Arial, Tahoma;"
    +"	font-size: 11px;"
    +"	text-decoration: none;"
    +"	cursor: default;"
    +"  }"
    +"</STYLE>"
    +"");
    var hcontxt = 20+((vocimenu.length + links.length)*25);
    document.write("");
    document.write("<table cellpadding=0 cellspacing=0 ID=\"contextMenu\" width=\"180\" height=\""+hcontxt+"\">");
    for(j=0; j<vocimenu.length; j++)
    	document.write("<tr><td class=\"menu\" onmouseover=\"mover(this);\" onmouseout=\"mout(this);\""+
    	"onmouseup=\"opzioni("+(j+1)+");\">"+vocimenu[j]+"</td></tr>");
    if(links.length) {
    	document.write("<tr><td class=\"menu\" valign=\"top\" style=\"padding:0px;height:1px;\"><div style=\"padding:0px;overflow:hidden;height:9px;display:inline;\"><hr width=\"100%\" color=\"BUTTONFACE\" size=\"2\"></div></td></tr>");	
    	for(j=0; j<links.length; j++) {
    		linkmenu = links[j].split(", ");
    		document.write("<tr><td class=\"menu\" onmouseover=\"mover(this);\" onmouseout=\"mout(this);\""+
    		"onmouseup=\"opzioni('"+linkmenu[1]+"');\">"+linkmenu[0]+"</td></tr>");
    	}
    }
    document.write("</table>");
    
    if(!document.all) contextMenu = document.getElementById("contextMenu");
    
    /* eventi */
    contextMenu.onselectstart	= function (){ return false; }
    contextMenu.onmouseover		= function (){ mousein=1; }
    contextMenu.onmouseout		= function (){ mousein=0; }
    window.onscroll				= hide;
    window.onresize				= hide;
    
    if (document.all) { document.onclick = function (){ if(mousein==0) hide(); }
    	document.oncontextmenu =  showMenu; }
    else { document.captureEvents(Event.MOUSEUP);
    	document.onmouseup = showMenu;
    	document.oncontextmenu = function() { showMenu; return false; } 
    } 
    
    
    /* funzioni */
    mousein=0;
    var mclick=0;
    
    function showMenu (evt) {
    if(!mousein) {
    	hide();
    	mclick++;
    	setTimeout("mclick=0",1000);
    	if(document.all) {
    		var Xmenu = event.clientX + document.body.scrollLeft;
    		var Ymenu = event.clientY + document.body.scrollTop;
    		if(event.clientX > (document.body.offsetWidth - contextMenu.width -20)) Xmenu -= contextMenu.width; 
    		if(event.clientY > (document.body.offsetHeight - contextMenu.height -10)) Ymenu -= contextMenu.height; 
    	}
    	else if(evt.which==2 || evt.which==3 || mclick>1) {
    		contextMenu.height = hcontxt;
    		var Xmenu = evt.clientX + window.pageXOffset;
    		var Ymenu = evt.clientY + window.pageYOffset;
    		if(evt.clientX > (window.innerWidth - contextMenu.width -20)) Xmenu -= contextMenu.width; 
    		if(evt.clientY > (window.innerHeight - contextMenu.height -10)) Ymenu -= contextMenu.height; 
    		mclick=0;
    	}
    	contextMenu.style.pixelLeft = Xmenu; 
    	contextMenu.style.pixelTop = Ymenu; 
    	show();
    	return false;
      }
    }
    
    function mover(ogg) {
    	ogg.style.backgroundColor = bgc_over;
    	ogg.style.color = col_over;
    }
    function mout(ogg) {
    	ogg.style.backgroundColor = bgc;
    	ogg.style.color = col;
    }
    function hide() {
    	contextMenu.style.visibility = "hidden";
    	contextMenu.style.left = 0; 
    	contextMenu.style.top = 0; 
    	mousein=0;
    }
    function show() {
    	contextMenu.style.visibility = "visible";
    }
    
    function opzioni(scelta) {
    hide();
    switch(scelta) {
    	case 1: history.back();
    			
    	break;
    	case 2: history.forward();
    			
    	break;
    	case 3: document.body.style.behavior='url(#default#homepage)'; document.body.setHomePage(this.location);
    			
    	break;
    	case 4: var tit=document.title;
    			if(tit=="") window.external.AddFavorite(this.location);
    			else  window.external.AddFavorite(this.location,tit);
    	
    	break;
    	case 5: location.href="view-source:"+location.href;
    			
    	break;
    	case 6: parent.print();
    			
    	break;
    	case 7: location.reload();
    			
    	break;
    	case 8: confirm("Nome Cognome - Abitazione (XX)\n\nCompetenze tecniche: HTML, Javascript, CSS, PHP, C & C++\n\nSito Internet: http://www.miosito.it/\n");
    			
    	break;
    	case 9: location.href="mailto:email@provider.it?Subject=Informazioni&body=Indicare Nome Cognome e Indirizzo";
    			
    	break;
    	default: location.href=scelta; 
    	break;
    	}
    }
    
    </script>

    - Funzionamento
    Dopo aver copiato il codice nell'HEAD della pagina... o opportunamente incluso in un js esterno si possono aggiungere dei collegamenti aggiungendo una voce all'array links[] con la seguente sintassi:
    links[links.length] = "Titolo sito, http://www.sito.it/";

    Attenzione alla virgola che separa il titolo dall'indirizzo.. la sintassi deve essere esatta per il buon funzionamento dello script.





    __________________________________________________ ___________________________


    8. Form Target su Popup
    compatibile con: Internet Explorer, Netscape, Opera

    - Descrizione
    Script per inviare un form utilizzando una finestra di popup


    - Codice
    Da incollare nell'HEAD della pagina
    codice:
    <script>
    
    function tgtpop(formname) {
    	window.open("","tpopup","");
    	formname.target = "tpopup";
    	return true;
    }
    
    </script>

    - Funzionamento
    Basta aggiungere la riga seguente al tag del FORM: onsubmit="return tgtpop(this);"




    __________________________________________________ ___________________________


    9. Suggerisci sito ad un amico
    compatibile con: Internet Explorer, Netscape, Opera

    - Descrizione
    Script per la segnalazione del sito ad una amico

    - Codice
    codice:
    <script>
    
    document.write("<div style=\"position:absolute;top:0px;left:0px;visibility:hidden;\"><form name=\"sendamico\" method=\"post\" enctype=\"text/plain\">"+
    	"<textarea name=\"testo\">\n\nCiao!\nVorrei segnalarti questa pagina: "+location.href+"\n\n"+
    	(location.href.substring(0,location.href.lastIndexOf("/")))+"/</textarea></form></div>");
    
    function mailtofriend() {
    	var email = prompt("Digita l'email del tuo amico","");
    	if(email!=null) {
    		
    		for (var i = 0; i < email.indexOf("@"); i++) {
    			var ch = email.charAt(i);
    			if((ch < "a" || "z" < ch) && !(ch == "." || ch == "_" || ((ch >= "1" && "9" >= ch) || ch == '0'))) {
    				alert("Indirizzo di e-mail errato o digitato non correttamente");
    				return mailtofriend();
    			}
    		}
    		for (var i = email.indexOf("@")+1; i < email.length; i++) {
    			var ch = email.charAt(i);
    			if((ch < "a" || "z" < ch) && !(ch == "." || ((ch >= "1" && "9" >= ch) || ch == '0'))) {
    				alert("Indirizzo di e-mail errato o digitato non correttamente");
    				return mailtofriend();
    			}
    		}
    	
    		if (email.indexOf("@") < 1 || (email.substring(email.indexOf("@")+1,email.length)).indexOf(".") < 1  ||
    		(email.substring(email.length-4,email.length)).indexOf(".") < 0 ||
    		(email.substring(email.length-4,email.length)).indexOf(".") > 1 ) {
    			alert("Indirizzo di e-mail errato o digitato non correttamente");
    			return mailtofriend();
    		}
    	
    		var azione = "mailto:"+email+"?Subject=Sito%20Interessante";
    		if(document.all) {
    			document.sendamico.action=azione;
    			document.sendamico.submit();
    		}
    		else {
    			var bodyazione = "Ciao! Vorrei segnalarti questa pagina: "+this.location+" .";
    			bodyazione = escape(bodyazione);
    			azione = azione + "&body=" + bodyazione;
    			location.href=azione;
    		}
    
    	}
    	return false;
    }
    
    </script>

    - Funzionamento
    Mettere questo collegamento dove si vuole:
    segnala ad un amico




    __________________________________________________ ___________________________


    10. Chiusura graduale del sito
    compatibile con: Internet Explorer

    - Descrizione
    Quando si clicca sulla X di chiusura della pagina la finestra si stringe al centro fino a chiudersi.

    - Codice
    Copiare questo codice nell'HEAD della pagina
    codice:
    <script>
    function chiudi() {
    	var lar=screen.width;
    	var alt=screen.height;
    
    	while(lar>40 && alt>30) {
    		posx = (screen.width-lar)/2;
    		posy = (screen.height-alt)/2;
    		window.resizeTo(lar,alt);
    		window.moveTo(posx,posy);
    		lar-=8;
    		alt-=6;
    	}
    }
      window.onbeforeunload = chiudi;
      onunload = chiudi;
    </script>




    __________________________________________________ ___________________________
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  3. #3
    11. FullScreen Automatico
    compatibile con: Internet Explorer, Netscape, Opera

    - Descrizione
    Tanti utenti di questo forum hanno chiesto come si potesse aprire la pagina in fullscreen senza utilizzare una popup.
    Uno script di Br1 ha risolto questo problema, io lo vorrei mettere in evidenza con alcune correzioni ed adattamenti ai vari browser

    - Codice
    Da incollare nell'HEAD della pagina
    codice:
    <script>
    /* Scritto da Br1 e ottimizzato da Mackey */
    function screenFull() { 
    
    	if (document.all) { 
    
    		sW=screen.width; 
    		sH=screen.height; 
    
    		window.moveTo(0,0); 
    		window.resizeTo(sW,sH);
    		gT=window.screenTop; 
    		gL=window.screenLeft; 
    		gR= sW - gL - document.body.offsetWidth;
    		gB= sH - gT - document.body.offsetHeight;
    		window.moveTo(-gL,-gT); 
    		window.resizeTo(sW+gL+gR,sH+gT+gB); 
    	}
    	else if(self.name!="start") {
    		var start = window.open(this.location.href,"start","fullscreen=1");
    		window.close();
    	}
    
    }
    </script>



    __________________________________________________ ___________________________


    12. Notizie scorrevoli
    compatibile con: Internet Explorer

    - Descrizione
    Notizie scorrevoli dal basso verso l'alto in una piccola tabella. Su Netscape e Opera è possibile consultare le notizie mediante una scrollbar automatica.

    - Codice
    Da incollare nella parte della pagina stabilita
    codice:
    <script>
    document.writeln("<TABLE height=200 width=200 border=0><TR><TD style=\"border:solid 1px #000000\">");
    if(document.all)
    	document.writeln("<MARQUEE onmouseover=this.stop() onmouseout=this.start() scrollAmount=1 hspace=2 vspace=2 scrollDelay=1 direction=up width=\"100%\" height=\"100%\">");
    else
    	document.writeln("<div style=\"width:100%; height:200px; overflow:auto;\">");
    document.writeln("
    
    
    
    
    
    
    
    
    
    
    ");
    </script>
    
    Inserire
    
    qui
    
    le
    
    notizie.
    
    è
    
    possibile
    
    utilizzare
    
    anche
    
    TAG
    
    dell'HTML
    
    tipo
    link
    
    <script>
    document.writeln("
    
    
    
    
    
    
    
    
    
    
    ");
    if(document.all)
    	document.writeln("</MARQUEE>");
    else
    	document.writeln("</div>");
    document.writeln("</TD></TR></TABLE>");
    </script>



    __________________________________________________ ___________________________


    13. Simulazione PHP: Passaggio dei dati
    compatibile con: Internet Explorer, Netscape, Opera

    - Descrizione
    Come nel PHP... prende i valori dalla barra dell'indirizzo e li rende variabili automaticamente utilizzabili
    ad esempio: ..pagina.htm?variabile1=10&nome=mackey&messaggio=c iao
    crea:
    variabile1 = 10;
    nome = "mackey";
    messaggio = "ciao";

    - Codice
    Da incollare nell'HEAD della pagina
    codice:
    <script>
    
    if(location.search!="") {
    	var ric=(String(location.search)).slice(1);
    
    			if(ric.indexOf("&")>2) {
    				elem = ric.split("&");
    				for(j=0; j<elem.length; j++)
    					assegna(elem[j]);
    			}
    			else
    				assegna(ric);
    }
    
    		function assegna(str) {
    			var parola ="";
    			nomevar = unescape(str.substring(0,str.indexOf("=")));
    			valore = unescape(str.substring(str.indexOf("=")+1,str.length));
    
    			for (j=0; j<valore.length; j++) {
    				if(valore.charAt(j)=="+")
    					parola += " ";
    				else if(valore.charAt(j)=="\"")
    					parola += "&quot;";
    				else
    					parola += valore.charAt(j);
    				}
    			valore = parola;
    
    			for (var j = 0; j < valore.length; j++) {
    				var ch = valore.charAt(j);
    				if ((ch < "1" || "9" < ch) && ch != '0') {
    					valore = "\""+valore+"\""; break;
    				}
    			}
    			if(valore=="")
    				valore ="\"\"";
    			if(nomevar!="")
    				document.write("<scr"+"ipt>var "+nomevar+"="+valore+";</scr"+"ipt>\n");
    		}
    
    </script>
    - Funzionamento
    Inserire questo codice prima di ogni altro script all'interno della pagina o richiamare da un file esterno con lo stesso criterio.
    Funziona solo con il method GET del form.



    __________________________________________________ ___________________________


    14. Simulazione PHP: include() da file esteno
    compatibile con: Internet Explorer

    - Descrizione
    Include una pagina HTML esterna... per ora l'ho implementato solo con Internet Explorer... ma tutti siete invitati a migliorare questo script.
    L'unico problema che avrei voluto risolvere è evitare l'apertura della popup utile al prelevamento del codice esterno.
    Chi fosse interessato a correggere questo script posti su questo 3d.
    Intanto il codice è funzionante e credo utile per tutti coloro che non usano un linguaggio server-side per l'inclusione di pagine esterne.
    Un utilizzo che si fa di frequente è creare un header.htm e un footer.htm ed includerli in ogni pagina relativamente il primo all'inizio e il secondo alla fine della pagina.
    Questo evita di ripetere il codice su ogni pagina e in fase di modifica evita di perdere molto tempo per modificare tutte le pagine.

    - Codice
    Da incollare nell'HEAD della pagina
    codice:
    <script>
    
    function include(pag) {
    /* 
    scritto da Mackey 
    http://www.mackey.too.it/
    si prega di lasciare questo commento almeno per riconoscimento
    */
    
    phtml = window.open(pag,'',"width=10, height=10, top=10000");
    
    ohtml = phtml.document.documentElement.outerHTML;
    window.phtml.close();
    document.write(ohtml);
    
    }
    
    </script>
    - Sintassi di chiamata
    Da inserire nel punto della pagina dove vogliamo l'inclusione
    <script>include("pagina_esterna.htm");</script>



    __________________________________________________ ___________________________

    Spero che questa pillola sia stata di vostro gradimento... ho impiegato un po' di tempo per scriverla e spero dia buoni frutti.
    ciao
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  4. #4
    Bravo Mackey
    lo metto subito nei preferiti.
    Eccoti!

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    633
    un po' dispersiva come pillola, ma complimenti...
    io lo definirei "un flaconcino di pillole"

    PS: per l'include puoi usare un frame o un iframe nascosto.

    ciauz e bravo!
    Alcuni miei articoli in PRO.HTML.IT: JavaScript | DHTML | DOM
    Sviluppo : wedev | forum

  6. #6
    Grazie Immanuel
    La volontà è la facoltà di agire per principi formulati dalla ragione ... "Il cielo stellato sopra di me, la legge morale dentro di me"
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  7. #7
    Originariamente inviato da standard
    un po' dispersiva come pillola, ma complimenti...
    io lo definirei "un flaconcino di pillole"

    PS: per l'include puoi usare un frame o un iframe nascosto.

    ciauz e bravo!
    Grazie anche a te STANDARD... è un onore ricevere complimenti dai grandi!

    PS: volevo sempre chiederti: perchè non metti un avatar al tuo nick?
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    633
    Originariamente inviato da Mackey
    Grazie anche a te STANDARD... è un onore ricevere complimenti dai grandi!

    PS: volevo sempre chiederti: perchè non metti un avatar al tuo nick?
    perchè non ti piace quello che c'è gia?
    :gren:
    Alcuni miei articoli in PRO.HTML.IT: JavaScript | DHTML | DOM
    Sviluppo : wedev | forum

  9. #9
    Originariamente inviato da standard
    perchè non ti piace quello che c'è gia?
    :gren:
    AH AH AH AH
    è ovvio che a te va bene così! lascialo pure...
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  10. #10
    Mackey, come mi ha fatto notare Real Bird, il link alla sua pillola non funge
    Eccoti!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.