Đây là một tái làm của một câu hỏi mà đã được đóng sai lầm: jQuery 1.8 outer Height/Width not workingjQuery 1.8.2 + noncurrent jQuery UI = outerWidth và outerHeight chia
Tôi đang đánh cùng một vấn đề. outerWidth
và outerHeight
và hiện trả về đối tượng jQuery thay vì số.
Chúng tôi đang sử dụng jQuery UI 1.8.17, phát hành ngày 10 tháng 1 năm 2012. Đây không phải là phiên bản cũ nên tôi có cảm giác người khác sẽ thấy điều này. Chúng tôi bị khóa vào phiên bản này vì một số plugin jQuery ui khủng khiếp, vì vậy việc nâng cấp hiện không phải là một tùy chọn.
Nếu tôi tìm thấy giải pháp, tôi sẽ trả lời câu hỏi này.
Dưới đây là một fiddle chứng minh vấn đề http://jsfiddle.net/delvarworld/yxDHu/ (jQuery UI phiên bản được thêm vào trong "quản lý tài nguyên")
Cập nhật: Đó là bởi vì dòng này trong jQuery UI:
return orig[ "outer" + name ].call(this, size);
được sai lầm gây ra tình trạng này trong jQuery 1.8.2:
var chainable = arguments.length && (defaultExtra || typeof margin !== "boolean"),
bởi vì mặc dù size
là undefined, việc kiểm tra là cho arguments.length
. chainable nên sai ở đây. Bạn có thể vượt qua trong không xác định và nó vẫn sẽ làm cho đối số một đối tượng với chiều dài 1. Ai đó cần phải đọc trên JS của họ;)
Bug mở: http://bugs.jquery.com/ticket/12647 –
1 cho mở lại câu hỏi. theo http://api.jquery.com/outerHeight/ 'includeMargin' là một tham số tùy chọn, nhưng nếu không được đặt thành true/false thì nó vẫn (jquery 1.8.3) trả về phần tử. – roberkules