延迟加载Javascript以加速我的Joomla
Delay Loading Javascript to speed my Joomla
我正在使用joomla网站,并被迫使用额外的java脚本。
我的问题是:
- 如何仅在页面完成后强制加载javascript
- 我不是说延迟它们,而是将它们放在队列中,直到页面完成加载。
我尝试了许多链接教程,但没有任何帮助。
请
你能提供正确的例子让我理解吗?
我插入到页面对接的JS文件的示例:
<script src="/js/easing.js" type="text/javascript"></script>
你能提供Jquery代码来强制所有这些脚本等到页面加载完成吗?
谢谢
塔里克
Ales Kotnik 的答案很好,如果你想在你自己的指定时间内完成它,你可以做这样的事情:
function loadScript(url, callback){
var script = document.createElement("script")
script.type = "text/javascript";
if (script.readyState){ //IE
script.onreadystatechange = function(){
if (script.readyState == "loaded" ||
script.readyState == "complete"){
script.onreadystatechange = null;
callback();
}
};
} else { //Others
script.onload = function(){
callback();
};
}
script.src = url;
document.getElementsByTagName("head")[0].appendChild(script);
}
这将仅在您调用脚本时加载脚本,然后像这样激活它:
<script type="text/javascript" src="http://your.cdn.com/first.js"></script>
<script type="text/javascript">
loadScript("http://your.cdn.com/second.js", function(){
//initialization code
});
</script>
使用 <script src="..." async="async"/>
.在现代浏览器(HTML5)中,它将生成单独获取javascript文件,并且不会延迟HTML的加载。您只需将脚本标签放在<body>
的末尾即可。
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 可以't让我的if语句处理js中的html表单输入
- 我的单元测试选项是什么
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 我的职位回报太快了,如何做出承诺
- 我的jQuery插件参数没有正确启动,遇到了问题
- 如何识别我的网站中的慢速设备
- 如何将JSON数据导入我的ejs模板
- JQuery添加元素需要在我的js之前再次添加JQuery脚本
- 知道为什么我的旋转木马不会自动更改图片吗
- 我的模板未被解析
- 为什么我的内容在从 1.5.26 迁移后两次可见,而 JavaScript 在 Joomla 3.x 上无法正常工作
- 单击我的joomla网站上的模块标题以指向一篇文章
- 延迟加载Javascript以加速我的Joomla
- 我的Joomla网站中的Javascript错误
- 更改Joomla中的编辑器删除了我的javascript,未保存..任何恢复的方法
- 将联系人表格添加到我的Joomla网站
- Joomla网站-有一个表单调用javascript函数-但它也重定向我的url -为什么
- 在Joomla上使用自定义滑块,它在我的机器上运行良好,在托管方面遇到了麻烦
- Ajax没有在joomla中处理我的自定义组件