L'obiettivo è quello di creare un elemento di completamento automatico JQuery i cui elementi elenco avere uno sfondo blu quando sono aleggiava o concentrati con la tastiera. La casella di ricerca di Facebook lo tira bene.Cambiare colore di sfondo della voce di completamento automatico jQuery in base allo stato (usando i CSS)
Ogni elemento <li>
contiene HTML personalizzato avvolto in un <a>
. Ognuno di questi <a>
tag appartiene alla classe sbiAnchor
. Generare lo sfondo blu al passaggio del mouse può essere fatto con successo utilizzando il seguente CSS:
.ui-autocomplete a.ui-corner-all.sbiAnchor:hover{
background: blue;
}
Ma come si applica lo stesso sfondo blu quando le chiavi utente su/giù la lista di completamento automatico. Il cambiamento del codice CSS nel seguente NON funziona:
.ui-autocomplete a.ui-corner-all.sbiAnchor:hover, .ui-autocomplete .ui-state-focus a.ui-corner-all.sbiAnchor{
background: blue;
}
Qual è l'approccio corretto qui? Tieni presente che questo effetto di sfondo blu dovrebbe applicarsi solo a un completamento automatico specifico sulla mia pagina (molti di questi esistono). Ecco perché sto usando sbiAnchor per differenziare i suoi elementi da quelli degli altri elementi di completamento automatico. Gli altri autocompleti dovrebbero mantenere il loro comportamento predefinito, quindi i selettori CSS non dovrebbero essere troppo ampi.
'corpo .ui-completamento automatico .ui-menu-item.ui-Stato- focus { /* selezionato */ } 'C'è uno spazio tra le ultime due classi quando non ci dovrebbe essere – Adrian
E vorrei anche alzare il commento di Adrian :) –