Câu hỏi này đã được Christian Stewart trả lời độc đáo, nhưng tôi chỉ muốn thêm điều gì đó vào câu trả lời của anh ấy.
tôi sử dụng đoạn mã sau, và thêm các lớp "cssClickableIcon
" để nút của tôi, để khi người dùng nhấp chuột vào một nút (hoặc một div
điều khiển), nó co vào bên trong một chút.
Đó là một tinh chỉnh nhỏ, nhưng có tác dụng thật sự tốt đẹp trên một trang web. Bạn thực sự cảm thấy như thể trang web tương tác hơn, chứ không phải bằng phẳng và bạn có được nhấp vào điều khiển.
// 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", "");
});
Bởi vì đây sử dụng on
chức năng của jQuery, này không làm việc với các nút hoặc các yếu tố DOM khác được tạo ra bởi một AngularJS ng-repeat
lệnh.
Và, tất nhiên, nếu bạn đang sử dụng các lớp nút CSS riêng Bootstrap, bạn có thể dễ dàng thêm hiệu ứng này trên tất cả các Bootstrap của bạn/nút góc sử dụng này:
$('body').on("mousedown", ".btn", function (e) {
$(this).css("transform", "scale(0.9)");
});
$('body').on("mouseup", ".btn", function (e) {
$(this).css("transform", "");
});
Tôi yêu hiệu ứng này rất nhiều và đó là một điều đơn giản để thêm vào!
Cập nhật
Christian Stewart đề nghị sử dụng CSS thay vì jQuery, và anh ấy hoàn toàn đúng ...
Vì vậy, bạn có thể đạt được hiệu quả tương tự chỉ sử dụng CSS đơn giản này:
.btn:active {
transform: scale(0.9);
}
bật() không hoạt động? http://jquery.com/upgrade-guide/1.9/#live-removed Ngoài ra, tôi rất tò mò muốn biết tại sao bạn không sử dụng tương đương Angular cho chuột và các sự kiện nhấp chuột. –
Những điểm tương đương là gì? –
Xin lưu ý câu trả lời tôi đã đăng! –