Ciao, esiste un metodo con click, per cambiare l'immagine di sfondo della pagina senza dover ricaricare la pagina stessa?
Ciao, esiste un metodo con click, per cambiare l'immagine di sfondo della pagina senza dover ricaricare la pagina stessa?
Incredibile, quanto a volte ci si impegola in qualcosa che sembra impossibile..
e poi si scopre che quel che si dava per scontato, perchè banale, ne fosse la soluzione..
Esistono le pseudoclassi :hover e :active, che pero` non dipendono dal click.
Se vuoi un evento al click, serve JS.
Comunque si puo` cambiare uno sfondo senza ricaricare la pagina. Esempi:
onclick="document.body.style.background='url(nuova imm.gif)';"
onclick="document.getElementById('ID_OGGETTO').sty le.background='url(nuovaimm.gif)';"
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
forse usando in qualche modo la pseudoclasse :active ...
Vuoi aiutare la riforestazione responsabile?
Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)
A parer mio dobbiamo finirla di suggerire utilizzi simili di javascript.Credo convenga continuare a sfruttare al massimo CSS e usufruire del DOM, più precisamente del metodo di attribuzione delle classi.
Un esempio veloce. Diciamo di avere una cosa simile:
Prepariamo una classe CSS apposita che ospiterà lo sfondo 'destinazione' dopo il clic. Ad esempio:codice:<body id="pagina">
Realizziamo una funzione js che attribuisce a #pagina la classe sfondo-dopo:codice:#pagina { background:#fff url('sfondo.png') no-repeat fixed 0 0; } .sfondo-dopo { background-image:url('sfondo-dopo.png'); }
Nella struttura di markup ci basterà inserire un collegamento tipo questo:codice:var pag = document.getElementById('pagina') function cambia_sfondo() { pag.className = 'sfondo-dopo' }
codice:<a href="javascript:void(0)" onclick="cambia_sfondo()"> Cambia sfondo </a>
Leading the Web to Its Full Potential...
www.pierofix.it | www.w3.org | www.zeldman.com/externals | http://browsehappy.com | www.alistapart.com | www.webstandards.org | www.flickr.com/photos/pierofix/
Mitico, ora provo!!
Incredibile, quanto a volte ci si impegola in qualcosa che sembra impossibile..
e poi si scopre che quel che si dava per scontato, perchè banale, ne fosse la soluzione..
ti voglio dare un suggerimento che va:
a) contro l'accessibilità. Ma l'accessibilità va rispettata (l'esempio ti serve come palestra)
b) contro questa sezione. ... Pazienza!
Ecc...
il javascript puoi metterlo anche in un foglio esterno.
Per copiare devi prima quotare.
Un CSS esterno definisce 3 classi per lo sfondo: 'in'; 'egg'; e 'graf', ma non ne imposta alcuna come attiva. background-attachment deve essere impostato a scroll.
Lo sfondo lo applico in un div, ma è evidente che puoi metterlo di sfondo al body.
<html>
<head>
<title></title>
<style>
.in {background-image:url('imm.jpg');
background-repeat: no-repeat;
background-attachment: scroll;
background-position: 50% 50%;
}
.egg {background-image:url('immagine.bmp');
background-repeat: no-repeat;
background-attachment: scroll;
background-position: 50% 50%;
}
.graf {background-image:url('graf.jpg');
background-repeat: no-repeat;
background-attachment: scroll;
background-position: 50% 50%;
}
</style>
<script language="javascript">
window.onload = function() {
sfondo() }
function sfondo() {
var cl = document.getElementById('qui');
if (cl.className == "") {
cl.className = "in"; }
else if (cl.className == "in") {
cl.className = "egg"; }
else if (cl.className == "egg") {
cl.className = "graf"; }
else { cl.className = "in"}
}
x = window.setInterval("sfondo()", 3000);
</script>
</head>
<body>
<div id="qui" style="border:1px green solid; width:460px;height:120px;color:red;font-size:26px;">Un po' di testo.</div>
</body>
</html>
N.B. 'javascript' va scritto tutto attaccato.Originariamente inviato da zeropunto
Mitico, ora provo!!
Oh, abbiamo scoperto come cambiare lo sfondo di un documento tramite un pulsante contenuto al suo interno: occhio a non abusare di queste cose, però.
Non dimentichiamoci mai che un documento web è un recipiente strutturato di contenuti e se l'utente deve maneggiare in modo particolare questi contenuti dovrebbe rifarsi ai 'pulsanti' (funzionalità) del browser, non a bottoncini inseriti nella pagina.
Distinguere i campi di competenza potrebbe essere uno dei passi fondamentali per realizzare buoni siti. Insomma, in casi particolari si può essere fantasiosi in questo senso, tuttavia usare sempre giudizio e analizzare con attenzione la situazione ed il contesto.
![]()
Leading the Web to Its Full Potential...
www.pierofix.it | www.w3.org | www.zeldman.com/externals | http://browsehappy.com | www.alistapart.com | www.webstandards.org | www.flickr.com/photos/pierofix/
ciaoOriginariamente inviato da Mich_
onclick="document.getElementById('ID_OGGETTO').sty le.background='url(nuovaimm.gif)';"
mi interessa questa funzione, ma non riesco ad evitare che faccia il repeat dell'immagine... c'è modo di evitarlo?
ciao e grazie
daniele
Originariamente inviato da danielepennati
ciao
mi interessa questa funzione, ma non riesco ad evitare che faccia il repeat dell'immagine... c'è modo di evitarlo?
ciao e grazie
danielecodice:onclick="document.getElementById('ID_OGGETTO').style.background='url(nuovaimm.gif) no-repeat';"
Vuoi aiutare la riforestazione responsabile?
Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)
grazie...
non era difficile...
![]()
potevo anche arrivarci da me...
ciao
daniele