jQuery: check element là hidden hay visible

Hi all,

Em có một phần tử div chứa nội dung chi tiết của một sản phẩm. Trước đó em có một đoạn code sử dụng phương thức toggle áp dụng cho phần tử này khi user click vào một button như sau:

$('button#show-detail').click(function() {
    $('#detail').toggle();
});

Bây giờ ở một đoạn code khác em cần phải kiếm tra visibility của phần tử này là hidden hay visible. Trong jQuery mọi người thường dùng cách nào để có thể làm việc này?

Được hỏi 11 tháng trước
Bình chọn bởi Đức Nam, Hải Phạm, Vân Trần, Tuấn Anh, Hana Pham, Anh Tuấn, Hoan Capy, Nam Nguyễn, Tram Anh, Thu Hang, Lê Huyền Trang, Hanh Nguyen, Thủy Ruby, Minh Phạm, Lê Hạnh

Vì ở trên bạn sử dụng hàm toggle() của jQuery hàm này sẽ thay đổi giá trị của thuộc tính display của phần tử từ hidden sang block. Do đó trong trường hợp này nên bạn cần kiểm tra thuộc tính display thay vì visibility.

var isVisible = $("#detail").is(":visible"); // true hoặc false

Giá trị của biến isVisible lúc này sẽ là true hoặcfalse tương ứng với trạng thái hiển thị block hay hidden.

Trả lời 2 ngày trước

Để kiểm tra trạng thái display của phần tử sử dụng is(':visible') hoặc is(':hidden'):

var isVisible = $('#detail').is(':visible');
var isHidden = $('#detail').is(':hidden');

Để kiểm tra visibility sử dụng:

if ($("#detail").css("visibility") == "hidden") {
    // phần tử có visibility là hidden
} else {
    // phần tử có visibility là visible
}
Trả lời 1 ngày trước

Viết Trả Lời: