2010-01-22 22 views
6

voglio che quando scatto questo link suoi cambiamenti di colore per il colore datoCambiare il colore di un ancoraggio quando si fa clic

<li id="press"><a href="<?=base_url()?>index.php/page/press">Press</a></li> 
+0

Puoi spiegare se vuoi cambiare il colore del testo dell'elemento e non fare altro o magari andare all'URL specificato da 'href' e avere un link colorato su quella pagina? – Crozin

+0

sì ... i pipistrelli esattamente voglio ... il collegamento deve essere attivo sempre clicco sul collegamento dat ... – richa

risposta

2

Tutti i link? a:focus { color: orange; }

Alcuni collegamenti? Dare loro una classe, ad esempio <a class="foo" ...>: a.foo:focus { color: purple; }

Un collegamento? Dagli un ID, ad esempio <a id="bar" ...>: a#bar:focus { color: #BADA55; }

+0

'a: focus' non è corretto. La pseudo-classe ': focus' aggiunge uno stile speciale a un elemento che ha il focus di input da tastiera. http://www.w3schools.com/CSS/pr_pseudo_focus.asp E la domanda è ** Cambiare colore di un'ancora quando si fa clic ** –

+0

@Haynes: ': focus' si riferisce alla messa a fuoco caret, che viene applicata dopo che il collegamento diventa attivo (': active' è transitorio). Cioè, il cursore si sposta sull'ultima posizione cliccata. – Anonymous

-2

È possibile farlo sul lato server con PHP o con JS.

Con PHP tutto ciò che serve è aggiungere un determinato nome di classe al collegamento una volta cliccato. un esempio molto semplice potrebbe essere:

<a href="myURL" class="<?php if(ExpressionToDetermineIfLinkIsClicked) echo 'selected'; ?>"> 

e CSS:

.selected { color: #FF0000; } 

Se volete farlo con JS, e si sta utilizzando qualsiasi quadro JS basta cercare sito dei quadri per " Come aggiungere un evento "&" Come aggiungere classname ", quindi combinare ciò che si ottiene dai risultati della ricerca.

Se siete, per caso, utilizzando prototype.js quadro, allora si può provare il seguente:

function selectLink(link){ 
    link.addClassName('selected'); 

    var otherLinks = link.siblings(); 

    for(var i = 0; i < otherLinks.lenght; i++){ 
    otherLinks[i].removeClassName('selected');  
    } 

} 

document.observe('dom:loaded', function(){ 
    $('menu').observe('click', function(event){ 
     event.stop(); 
     var link = Event.element(event); 
     selectLink(link); 
     }); 
    }); 

--- 
<div id="menu"> 
<a href="url1" id="link1" class=""> 
<a href="url2" id="link2" class=""> 
<a href="url3" id="link3" class=""> 
</div> 
1

Ecco la Css di esempio per il collegamento ipertestuale visitato

a:link {color:#FF0000}  
a:visited{color:Red} 

speranza che aiuterà.

+1

+1 Soluzione cross-browser più semplice e ampiamente supportata – slebetman

+1

-1 Non lo è - Richa vuole che il colore cambi quando viene cliccato, non dopo. –

+0

Quindi è possibile utilizzare a: attivo {colore: rosso} Sperare che possa essere d'aiuto –

Problemi correlati