10 Thủ Thuật Jquery Quan Trọng Cần Phải Biết - Viblo
Có thể bạn quan tâm
1. Back to top
Bằng cách sử dụng phương thức animate và scrollTop của Jquery bạn không cần phải thêm bất cứ plugin nào để tạo ra được hiệu ứng scroll-to-top
$('a.top').click(function (e) { e.preventDefault(); $(document.body).animate({scrollTop: 0}, 800); }); <!-- Create an anchor tag --> <a class="top" href="#">Back to top</a>2. Preload images
Nếu website của bạn sử dụng nhiều ảnh nhưng chúng chưa được load xong, vậy thì bạn có thể sử dụng câu lệnh ở dưới đây để load tạm thời 1 ảnh thay thế
$.preloadImages = function () { for (var i = 0; i < arguments.length; i++) { $('<img>').attr('src', arguments[i]); } }; $.preloadImages('img/hover-on.png', 'img/hover-off.png');3. Kiểm tra ảnh load xong chưa
$('img').load(function () { console.log('image load successful'); });Bạn có thể kiểm tra 1 ảnh cụ thể được load xong chưa bằng cách sử dụng thêm Id của ảnh
4. Toggle class on hover
Nếu bạn muốn thay đổi class của một phần tử khi rê chuột qua thì có thể áp dụng đoạn lệnh như dưới đây
$('.btn').hover(function () { $(this).addClass('hover'); }, function () { $(this).removeClass('hover'); });Hoặc có thể đơn giản hơn như sau
$('.btn').hover(function () { $(this).toggleClass('hover'); });Tuy nhiên trong thực tế không ai làm vậy cả, bạn có thể áp dụng hoàn toàn css để đạt được tốc độ cao hơn nhưng biết thêm một cách bằng js cũng là điều rất thú vị
5. Vô hiệu hóa các trường nhập dữ liệu
Lấy một ví dụ là người dùng ấn vào checkbox đồng ý với các điều khoản sử dụng thì mới enable nút submit, còn không thì sẽ disable
//cho phép người dùng $('input[type="submit"]').prop('disabled', true); //vô hiệu hóa $('input[type="submit"]').prop('disabled', false);6. Chặn lại 1 hành động mặc định
Đầu tiên mình cần phải giải thích hành động mặc định là gì, đó là khi bấm vào thẻ <a> thì nó nhảy tới 1 link, bấm vào button thì nó gọi sự kiện onclick.Và đôi khi vì một lý do nào đó chúng ta cần chặn các hành động mặc định đó lại thì có thể sử dụng câu lệnh sau
$('a.no-link').click(function (e) { e.preventDefault(); });7. Ẩn hiện một thẻ div
Chúng ta có thể áp dụng 2 hiệu ứng Fade hoặc Slide để ẩn hiện một phần tử.
// Fade $('.btn').click(function () { $('.element').fadeToggle('slow'); }); // Toggle $('.btn').click(function () { $('.element').slideToggle('slow'); });8. Simple Accordion
Có rất nhiều cách để làm cái này như sử dụng các thư viện bên ngoài. Nhưng cách đơn giản và ngắn gọn nhất là copy & paste các đoạn lệnh dưới đây
$('#accordion').find('.content').hide(); // Accordion $('#accordion').find('.accordion-header').click(function () { var next = $(this).next(); next.slideToggle('fast'); $('.content').not(next).slideUp('fast'); return false; }); <div id="accordion"> <h4 class="accordion-header">Java</h4> <div class="content"> Java là một ngôn ngữ rất mạnh mẽ </div> <h4 class="accordion-header">PHP</h4> <div class="content"> PHP là một ngôn ngữ rất thú vị </div> <h4 class="accordion-header">C#</h4> <div class="content"> C# là một ngôn ngữ rất dễ học </div> </div>9. Tạo 2 thẻ div có cùng chiều cao
Trong một vài trường hợp bạn muốn 2 thẻ div phải có cùng chiều cao với nhau cho dù nội dung bên trong chúng là gì đi chăng nữa
$('.div').css('min-height', $('.main-div').height());Ở đoạn lệnh trên thiết lập thuộc tính là min-height, điều này có nghĩa là làm cho thẻ div có thể có cao hơn nhưng không bao giờ ngắn hơn. Tuy nhiên chúng ta có thể sử dụng cách thức linh động hơn bằng cách lặp tất cả các thẻ div và gán chiều cao của nó bằng chiều cao của thẻ div cao nhất
var $columns = $('.column'); var height = 0; $columns.each(function () { if ($(this).height() > height) { height = $(this).height(); } }); $columns.height(height);Nếu bạn muốn tất cả các div có cùng chiều cao
var $rows = $('.same-height-columns'); $rows.each(function () { $(this).find('.column').height($(this).height()); });10. Tìm kiếm phần tử dựa vào text
Bằng cách sử dụng phương thức contains() của jquery bạn có thể tìm được thẻ div chứa nội dung có từ khóa
var search = $('#search').val(); $('div:not(:contains("' + search + '"))').hide();Tham khảo
http://apollo13.vn/lap-trinh/javascript/javascript-co-ban https://github.com/AllThingsSmitty/jquery-tips-everyone-should-know/blob/master/README.md
Từ khóa » Sự Kiện Hover() Trong Jquery Có Tác Dụng Gì
-
.hover() | Hàm JQuery | Tham Khảo JQuery | Học Web Chuẩn
-
.hover() Trong JQuery - Hoclaptrinh
-
.hover() Trong JQuery - Quách Quỳnh
-
Cách Dùng Sự Kiện Hover Chuột Trong Javascript - Freetuts
-
Sự Kiện Hover() Trong JQuery - Web Cơ Bản
-
Event (sự Kiện) Trong JQuery - Thủ Thuật
-
Sự Kiện Trong Jquery - Thầy Long Web
-
Khi Nào Chọn Chức Năng Mouseover () Và Hover ()?
-
Sử Dụng Sự Kiện Trong Jquery | Lê Vũ Nguyên Dạy Học Lập Trình
-
JQuery Events – Các Sự Kiện Của Chuột | Quyetdo289's Blog
-
Xử Lý Sự Kiện Trong JQuery
-
UmbrellaJS Là Sự Thay Thế Của Bạn Cho JQuery - Viblo
-
Sự Kiện Trong JQuery - JQuery Events
-
Sự Kiện Trong Dom - JavaScript