使用Fancybox加载的异步
Using Fancybox loaded async
我正在一个onload函数中加载Fancybox-lib-async:
function myLoad(){
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'miurl.com';
var x = document.getElementsByTagName('script')[document.getElementsByTagName('script').length - 1];
x.parentNode.insertBefore(s, x);
}
<body onload="myLoad()">
脚本被添加到我的脑海中,但当我尝试时:
$("#myDiv").fancybox();
执行myLoad()后,控制台在fancybox插件调用中显示"Uncaught TypeError:undefined不是函数"。
有什么想法吗?
将我的评论转化为答案,因为它解决了您的问题:
在尝试使用脚本之前,您必须"等待"脚本完成加载。异步加载意味着它将在后台加载,稍后完成加载,而加载过程中的其他事情仍在继续。
如果jQuery已经可用,则可以使用$.getScript()
并使用成功处理程序回调函数来了解它何时完成加载。
$.getScript(yourFancyBoxCodeURLHere, function() {
$("#myDiv").fancyBox();
});
您的意思是调用fancybox();
被执行并且内部有问题吗。则此功能将有所帮助;-)
或者你的意思是$("#myDiv")
是问题所在,因为为什么它应该有一个函数fancybox()
。这很难猜测,因为你给我们的信息很少。
相关文章:
- 用于测试javascript中异步加载的脚本的工具
- 从要使用Protractor测试的服务器异步加载的动态数据列表的列表
- 异步加载角度控制器和工厂
- 加载 JavaScript 取决于以前异步加载的 JavaScript
- 按顺序异步加载JS脚本(等待上一个脚本完成)
- 在照片查看器(Javascript和jQuery)中异步加载图像时可能出现错误
- 异步加载的SVG过滤器feColorMatrix在Chrome中工作,而不是在Safari或Firefox中
- 异步加载Javascript
- 从框架中的函数异步加载 Javascript
- 异步加载特定的 CSS,并在加载时删除等待消息
- 异步加载 NPM 模块
- 如何使rails上的所有图像异步加载视图页面
- 任何控制Javascript异步加载顺序的方法
- 异步加载JQuery时Tabbed Box已损坏
- 脚本和图像是同步加载还是异步加载
- 使用TypeScript和Promises异步加载/卸载内容
- 异步加载脚本
- 在Rails4中使用Sprockets和Turbolinks时如何异步加载javascript
- 正在检测异步加载的按钮
- 异步加载ASP.NET绑定的Javascript,然后调用回调