Questa domanda è già stata ben fornita da Christian Stewart, ma volevo solo aggiungere qualcosa alla sua risposta.
Io uso il seguente codice e aggiungere il "cssClickableIcon
" classe per i bottoni, in modo che quando l'utente fa clic su un pulsante (o un controllo div
), si restringe leggermente verso l'interno.
E 'un piccolo trucco, ma ha davvero un bel effetto su una pagina web. Hai davvero la sensazione che la pagina web sia più interattiva, piuttosto che piatta, e che tu abbia cliccato sul controllo.
// Make the buttons "bounce" when they're clicked on
$('body').on("mousedown", ".cssClickableIcon", function (e) {
$(this).css("transform", "scale(0.9)");
});
$('body').on("mouseup", ".cssClickableIcon", function (e) {
$(this).css("transform", "");
});
Poiché questa funzione utilizza jQuery on
, questo fa lavoro con bottoni o altri elementi DOM creati da un ng-repeat
comando AngularJS.
E, naturalmente, se si sta utilizzando proprie classi pulsante CSS di Bootstrap, è possibile aggiungere facilmente questo effetto in tutti del vostro Bootstrap/pulsanti angolari di utilizzare questo:
$('body').on("mousedown", ".btn", function (e) {
$(this).css("transform", "scale(0.9)");
});
$('body').on("mouseup", ".btn", function (e) {
$(this).css("transform", "");
});
amo questo effetto così tanto ed è una cosa così semplice da aggiungere!
Aggiornamento
Christian Stewart ha suggerito usando i CSS invece di jQuery, e lui è assolutamente giusto ...
Quindi, si può ottenere lo stesso effetto utilizzando solo questo semplice CSS:
.btn:active {
transform: scale(0.9);
}
on() non funziona? http://jquery.com/upgrade-guide/1.9/#live-removed Inoltre, sono curioso di sapere perché non stai utilizzando gli equivalenti Angolari per gli eventi mouse over e click del mouse. –
Quali sono quegli equivalenti? –
Si prega di notare la risposta che ho postato! –