Tôi thực sự quản lý để kích hoạt một liên kết ưa thích chỉ từ một tệp JS bên ngoài bằng cách sử dụng sự kiện "trực tiếp":
Trước tiên, hãy thêm sự kiện nhấp chuột trực tiếp vào liên kết động trong tương lai của bạn:
$('a.pub').live('click', function() {
$(this).fancybox(... fancybox parameters ...);
})
Sau đó, nối neo vào phần nội dung:
$('body').append('<a class="iframe pub" href="your-url.html"></a>');
Sau đó, kích hoạt ưa thíchBox bằng cách "nhấp vào" neo:
$('a.pub').click();
Liên kết ưa thích hiện đã "gần như sẵn sàng". Tại sao "gần như"? Bởi vì có vẻ như bạn cần thêm một số thời gian trễ trước khi kích hoạt lần nhấp thứ hai, nếu không, tập lệnh chưa sẵn sàng.
Đó là một sự chậm trễ nhanh chóng và bẩn thỉu khi sử dụng một số hoạt ảnh trên neo của chúng tôi nhưng nó hoạt động tốt:
$('a.pub').slideDown('fast', function() {
$('a.pub').click();
});
Của bạn đây, hộp thư mục của bạn sẽ xuất hiện trên tải!
HTH