Precedente :: Successivo |
Autore |
Messaggio |
rebelia Dio maturo


Registrato: 17/07/03 09:22 Messaggi: 7987
|
Inviato: 01 Ott 2005 11:56 Oggetto: * scroll orizzontale |
|
|
qui di seguito un interessante lavoro fatto da barninga z!, uno script che permette lo scroll orizzontale e che e' stato studiato per sostituire la galleria in flash di questa pagina del suo sito:
l'esempio lo trovate qui; il codice della pagina compreso lo script che fa funzionare il meccanismo e' il seguente:
Codice: |
<html>
<head>
<title>
prova
</title>
<link href="styles.css" rel="stylesheet" type="text/css" />
<script language="JavaScript1.2" type="text/javascript">
var shft = 0;
function goLeft(px)
{
shft -= px;
// alert(shft + " " + document.getElementById("scrolling").style.left);
document.getElementById("scrolling").style.left = shft;
// alert(shft + " " + document.getElementById("scrolling").style.left);
}
function goRight(px)
{
shft += px;
// alert(shft + " " + document.getElementById("scrolling").style.left);
document.getElementById("scrolling").style.left = shft;
// alert(shft + " " + document.getElementById("scrolling").style.left);
}
</script>
</head>
<body>
<div id="external">
<div id="viewport">
<div id="scrolling">
<img src="goccia.jpg" />
</div>
</div>
<form name="form1">
<input type="button" class="but1" name="leftbut" value="scroll left" onclick="goLeft(20)">
<input type="button" class="but1" name="rightbut" value="scroll right" onclick="goRight(20)">
</form>
</div>
</body>
</html>
|
mentre quello del css e':
Codice: |
html, body {
margin: 10px;
border: 1px solid blue;
padding: 10px;
}
body {
}
#external {
display: block;
}
#viewport {
height: 192px;
width: 200px;
overflow: hidden;
border: 1px solid black;
}
#scrolling {
position: relative;
left: -100px;
width: 550px;
overflow: hidden;
border: 1px solid red;
}
.but1 {
padding: 5px;
margin: 10px;
}
|
***
per chi ne capisse di ja*ascr*pt (gli asterischi sono per non far arrabbiare i settaggi del forum ), vi giro una sua domanda:
Citazione: |
fuori dalle funzioni e' definita la variabile shft, che in pratica memorizza l'offset attuale rispetto all'origine. in teoria non dovrebbe essere necessaria: dovrebbe bastare
document.getElementById("scrolling").style.left -= px;
(o += px per andare a dx), in realta' non funziona. all'inizio (lo si vede decommentando gli alert) style.left non sembra essere definita, anche se, avendo caricato il css, dovrebbe esserlo. poi pero' dopo il primo shift (che funziona in ogni caso) rimane definita: ad ogni passaggio si ritrova l'ultimo valore settato, ma l'operazione di autoincremento o autodecremento smette di funzionare. con un contatore globale funzionava.
|
|
|
Top |
|
 |
juzo kun Dio maturo


Registrato: 19/04/04 09:32 Messaggi: 1853 Residenza: tra la tastiera e la sedia
|
Inviato: 02 Ott 2005 20:29 Oggetto: |
|
|
Ahimè, essendo ignoranterrima su JS non posso rispondere, ma voglio lasciar inciso a futura memoria quanto adori questa dichiarazione:
il sito di barninga ha scritto: | Weird site appearance? Well, this site is "W3C compliant"; this means that it follows the W3 Consortium directives for interoperable web pages: unfortunately, some buggy browsers are not able to render correctly a strictly compliant XHTML/CSS page. I am definitely not wasting time in experimenting workarounds to support them. Since this site displays just like I intended at least with both Firefox and Opera, and fine with Mozilla and Konqueror, my advice is that you too stop bothering with Explorer and switch to a real browser: this site is just the least important reason to do so - beside security, freedom and many more. |
Cià
JK |
|
Top |
|
 |
rebelia Dio maturo


Registrato: 17/07/03 09:22 Messaggi: 7987
|
Inviato: 02 Ott 2005 20:46 Oggetto: |
|
|
dillo che sei pagata dal nemico!
battute a parte: lui lo puo' fare perche' quello e' un sito personale, ma lavorando a siti commerciali o di ampia divulgazione non si puo', si puo' solo spingere perche' i vari browsers rispettino di piu' le regole date ed eventualmente dirottare quanti piu' clienti possibile su browsers alternativi
detto questo, ha ragione  |
|
Top |
|
 |
juzo kun Dio maturo


Registrato: 19/04/04 09:32 Messaggi: 1853 Residenza: tra la tastiera e la sedia
|
Inviato: 02 Ott 2005 21:38 Oggetto: |
|
|
rebelia ha scritto: | ma lavorando a siti commerciali o di ampia divulgazione non si puo', si puo' solo spingere perche' i vari browsers rispettino di piu' le regole date ed eventualmente dirottare quanti piu' clienti possibile su browsers alternativi |
Assolutamente vero -- è quello che tento di fare sempre anche io
Cià
JK |
|
Top |
|
 |
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|