2010-11-14 36 views
8

Với jQuery UI tabs, bạn có thể sử dụng phương pháp chọn để chạy mã khi một tab được nhấp:Với các tab Giao diện người dùng jQuery, làm cách nào tôi có thể chạy mã sau khi nhấp chuột vào tab?

$(".selector").tabs({ 
    select: function(event, ui) { ... } 
}); 

Nhưng mã được chạy trước tab chỉ nhấp đã được tải. Tôi cần chạy mã sau khi tab mới đã được tải. Tôi có thể làm cái này như thế nào? Cảm ơn vì đã đọc.

Trả lời

6

vẻ như bạn có thể liên kết với tabsload hoặc tabsshow:

http://jqueryui.com/demos/tabs/#Events

dụ

$('#example').bind('tabsshow', function(event, ui) { ... }); 
+2

Sự kiện này hiện là "kích hoạt"/"tasbactivate"; xem http://api.jqueryui.com/tabs/#event-activate – Nenotlep

+0

Để rõ ràng, bạn sẽ không sử dụng phương thức bind(): $ (".selector") .tabs ({ kích hoạt: function (event) , ui) {} }); – SetFreeByTruth

12

API đã thay đổi. Sự kiện này hiện là "kích hoạt"/"tasbactivate"; thấy http://api.jqueryui.com/tabs/#event-activate

----- OLD trả lời dưới đây -----------

Dựa trên những câu hỏi đó là tabsshow (không phải là tabsload) sự kiện đó là mong muốn ... sự kiện được kích hoạt khi một tab được hiển thị.

Mã số ví dụ: (từ http://jqueryui.com/demos/tabs/)

Cung cấp chức năng gọi lại để xử lý các sự kiện chương trình như một tùy chọn init.

$(".selector").tabs({ 
    show: function(event, ui) { ... } 
}); 

Liên kết với sự kiện hiển thị theo loại: tabshow.

$(".selector").bind("tabsshow", function(event, ui) { 
    ... 
}); 

Sự kiện này hữu ích nếu bạn muốn đặt trọng tâm kiểm soát hoặc tương tự.

+8

Sự kiện này hiện là "kích hoạt"/"tasbactivate"; xem http://api.jqueryui.com/tabs/#event-activate – Nenotlep

+0

đã đồng ý về câu trả lời này ... có ý nghĩa hơn cho những gì người dùng đang yêu cầu. – dah97765

+0

Vui lòng sửa/chỉnh sửa câu trả lời theo nhận xét của @Nenotlep –

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