$('a.lightbox').hover(function () {
if (jQuery().lightbox) {
// required, otherwise lightbox.js will be loaded on hover each time
$("a.lightbox").lightbox({
'type': 'iframe',
'overlayOpacity': 0.5,
'width': 632,
'hideOnContentClick': false
});
} else {
// load script
$.ajax({
url: "js/lightbox.js",
dataType: 'script',
cache: true,
success: function () {
// load css
$('head').append('<link rel="stylesheet" type="text/css" href="css/lightbox.css">');
// lightbox function
$("a.lightbox").lightbox({
'type': 'iframe',
'overlayOpacity': 0.5,
'width': 632,
'hideOnContentClick': false
});
}
});
}
});
这个在本地机器上运行得很完美,但是上传到服务器后就不太行了,因为12kb的lightbox.js和lightbox.css需要一些时间来加载。
我想要做以下任意一项:
- 在悬停时开始加载js/css,但禁用“点击”功能x秒,直到它们加载完成。
- 单击后,延迟x秒执行函数以打开灯箱,直到js/css加载完成。
- 在页面加载后大约1分钟延迟加载lightbox.js和lightbox.css。
我更喜欢第三个选项,但不知道如何实现这些。
我会感激任何帮助!谢谢!