2011-11-03 18 views
10

Dường như phương pháp thông thường để tạo các tiện ích jQuery là gọi một hàm trên một phần tử, chuyển các tùy chọn dưới dạng tham số và sau đó không chạm trực tiếp vào tiện ích. Có cách nào để thay đổi tùy chọn của tiện ích sau khi đã được tạo không?Làm cách nào để thay đổi tùy chọn của tiện ích con giao diện người dùng jQuery sau khi đã được tạo?

Tôi muốn tạo hộp có thể kéo được căn chỉnh với lưới, nhưng nếu người dùng thay đổi kích thước trang, tôi muốn mở rộng lưới. Trong sự kiện thay đổi kích thước cửa sổ, làm cách nào tôi có thể truy cập thuộc tính grid của phần tử có thể kéo?

$('.box').draggable({grid: [40,40]}); 
... 
$(window).resize(function(){ ??? }); 

Trả lời

14

Từ các tài liệu ui jquery:

$(".selector").draggable("option", "grid", [50, 20]); 

Vì vậy, bạn có thể làm

$(".box").draggable("option", "grid", [width, height]); 
+0

tôi đang làm chính xác này, http://jsfiddle.net/bz2aeLrg/1/ Nhưng có vẻ như tôi cần làm mới/cập nhật tiện ích con sau đó. Trong mẫu sau khi bạn nhấp vào nút 'Thay đổi chế độ ', thuộc tính được cập nhật nhưng giao diện người dùng chỉ được cập nhật nếu tôi thay đổi kích thước cửa sổ trình duyệt. – Sam007

+0

. '$ (cửa sổ) .resize();});' – Sam007

Các vấn đề liên quan