Onclick : sostituire odiosi "button" con semplici Links

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
ciao a tutti
;)
ho un piccolo problemino credo risolvibile .
sono assolutamente inesperto di JS e sto arrovellandomi su una cosa che forseè di u n a banalità incredibile
vorrei ssostituiredei buttons odiosi (grandi, grigi e arcaici) con semplici links del genere
<< >> colorati per fare scorrere avanti e indieitro la mia galleria di foto..
ecco il codice inhtml che richiama la funzione js

<input onclick="backward()" value="&lt;&lt;Back" name="B2" type="button"> <input onclick="forward()" value="Next&gt;&gt;" name="B1" type="button"><br><a onclick="which=1;backward();return false" href="#"><small>Ricomincia</small></a></div>


ho provato a mettere <a onclick ecc...ma non viene visualizzarto nulla sulla pagina web

ciao e grazie a tutti in anticipo :byebye:
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
risolto grazie. altro dubbio pero'..

trovato codice:
<a href="#" onclick="backward()">&lt;&lt;Back</a>
<a href="#" onclick="forward()">Next&gt;&gt;</a>

grazie cmq

unicacosa, è che il link href mi sposta la visuale in basso, mentre il button no

é possibile tramite css cambiare i colori e font del button?
Grazie
 

PoLe

MRW Moderator
6 Giu 2005
2.210
3
0
36
.: Venezia :.
www.bzconsulting.it
...
é possibile tramite css cambiare i colori e font del button?
Grazie
Certo :)
basta semplicemente che nel CSS crei la classe dandovi le impostazioni da te desiderate, dopodichè non devi fare altro che assegnare tale classe al bottone.

:byebye:
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
Ciao, fatto grazie
Ho provato così e funziona, anche cross browser ie6,ie7, firefox
(per ora , mancano altre verifiche su altri brows.)

div.esempio input {
background: #969399;
color:white;
font-size: 10px;

}

:fonzie::byebye:
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
Ciao
;)
Volevo chiedere un parere sullo script di cui sopra
<a href="#" onclick="backward();return false">&lt;&lt;Back</a>
<a href="#" onclick="forward();return false">Next&gt;&gt;</a>

Mi spostano avanti e indietro la galleria Pero' vorrei sapere se qualcuno sa come fare
rimuovere il link all'ultima foto della galleria in modo che non si possa piu scorrere avanti
...e
viceversa. Togliere il Link "indietro"nella prima fotro della gallery.
E ovviamente teneere tutte e due i link durante le foto di mezzo, ma quello viene automaticoa giusto?
ecco lo script jScollegato a qeui link di cui sopra
g. i.a.

paolo


var photos=new Array()
var which=0
photos[0]="public/foto2/pics/13.jpg";photos[1]="public/foto2/pics/12.jpg";photos[2]="public/foto2/pics/11.jpg";photos[3]="public/foto2/pics/10.jpg";photos[4]="public/foto2/pics/9.jpg";

function backward(){
if (which>0){
window.status=''
which--
document.images.photoslider.src=photos[which]
}
}

function forward(){
if (which<photos.length-1){
which++
document.images.photoslider.src=photos[which]
}
else window.status='End of gallery':byebye:
 

PoLe

MRW Moderator
6 Giu 2005
2.210
3
0
36
.: Venezia :.
www.bzconsulting.it
Ciao :)
Siccome vedo che JS lo capisci, e son di fretta, ti spiego velocemente facendoti un esempio:

Ti faccio l'esempio per la funzione "Avanti", ma poi devi applicare lo stesso concetto per la "Indietro".

Codice:
function forward(){
if (which<photos.length-1){
which++
}
else {
which = 1;
}
document.images.photoslider.src=photos[which]
}
In questo modo, quando l'utente cliccherà su "avanti" essendo già all'ultima foto, gli riapparirà la prima.
Mi raccomando, ripeto, lo stesso concetto (ovviamente applicato all'inverso), devi metterlo anche per il bottone "indietro"

:byebye:
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
Ciao ho provato ma non cambia nulla

innanzitutto grazie.

:fonzie:
pero' è rimasto uguale .
Ciao:crying:

function forward(){
if (which<photos.length-1){
which++
}
else {
which = 1;
}

document.images.photoslider.src=photos[which]
}
else window.status='End of gallery'

}
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
scusami

nonavevo tolto end of gallery.

:fonzie:
mi sa che devo studiare un po di piu'
Ora funziona, il ciclo fa ilsuo dovere :fonzie: e torna alla prima
l'unica cosa vorrei invece che si fermasse e sparisse il link dell forward, ei rimanesse a sx solo backward
è fattibile senza sneuronarsi?
:book:


ciao:byebye::byebye:
 

PoLe

MRW Moderator
6 Giu 2005
2.210
3
0
36
.: Venezia :.
www.bzconsulting.it
...
vorrei invece che si fermasse e sparisse il link dell forward, ei rimanesse a sx solo backward
è fattibile senza sneuronarsi?
:book:
Direi di si :)

Assegna un id ad entrambi i bottoni, dopodichè fai qualcosa tipo:
Codice:
function forward(){
if (which<photos.length-1){
which++;
document.images.photoslider.src=photos[which];
}

if (which==photos.length){
document.getElementById("id-bottone-avanti").style.visibility="hidden";
}
else{
document.getElementById("id-bottone-avanti").style.visibility="visible";
}
}
Anche stavolta, ricordati di applicare lo stesso concetto (al contrario) al bottone indietro.

:byebye:
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
Ti ringrazio!!! :fonzie:
Già che ci sono chiedo un altro parere
Noncapisco xché questo
questo script funziona solo con il primo OnClick,mentre q uando premo ancorail pulsante x riportare lo stato all'immagine iniziale., nada?

<div class="box"> <a href="#" onClick="act()" onClick="inact();">
<img src="photo1.jpg" name="giu" border="0" alt="Netscent Advantages"></a></div>

Pero' se metto OnMouseOut funziona, e se levo i mouse torna alla immagina originale. Qualche idea? Forse OnClick non si puooi' ripetere?

<div class="box"> <a href="#" onClick="act()" onMouseOut="inact();">
<img src="photo1.jpg" name="giu" border="0" alt="Netscent Advantages"></a></div>

ciagrazie:byebye:
 

Zorthan

Utente Attivo
24 Feb 2007
85
0
0
Ciao ho fatto esatt. comehai suggerito ma il js non funziona nemmeno col primo click.

PRovo a vedere se ci sono errori, ma non credo xch é s e metto solo act(); mi funziona
ciao grazei:byebye:
 

daviduccio

Moderatore
5 Ago 2004
1.114
0
0
35
Sicilia
www.daviduccio.it
Perché hai dato allo stesso evento "OnClick" 2 funzioni che devono fare la stessa cosa ma in modo inverso!

Cioè non stai lanciando 2 funzioni che fanno 2 cose diverse e separate ma dal quel che si evince, Attivare e Disattivare la stessa cosa.

Non si può fare!

Creati una funzione che attiva e disattiva controllando l'attuale modalità

function attiva_disattiva() {

if(tuooggetto==attivo) {

inact();

}else{

act();

}

}



Magari se ci posto il tuo codice, e cosa vuoi attivare/disattivare possiamo darti la soluzione definitiva.