Hri*_*sto 40 javascript jquery getscript
我有一堆JavaScript文件,我想在页面中包含,但我不想继续写
<script type="text/javascript" src="js/file.js"></script>
Run Code Online (Sandbox Code Playgroud)
那么有没有办法将所有文件都包含在目录中(未知大小)?我能做点什么......
$.getScript("js/*.js");
Run Code Online (Sandbox Code Playgroud)
...获取"js"目录中的所有JavaScript文件?我怎么能用jQuery做到这一点?
Mar*_*sey 25
一般来说,这可能不是一个好主意,因为你的html文件应该只加载他们实际使用的JS文件.无论如何,这对于任何服务器端脚本语言来说都是微不足道的.只需在将页面提供给客户端之前插入脚本标记.
如果要在不使用服务器端脚本的情况下执行此操作,可以将JS文件放入允许列出目录内容的目录中,然后使用XMLHttpRequest读取目录的内容,并解析文件名并加载它们.
选项#3是一个"加载器"JS文件,它使用getScript()来加载所有其他文件.将它放在所有html文件的脚本标记中,然后只需在上传新脚本时更新加载程序文件.
jel*_*ree 23
使用服务器端脚本生成脚本标记行怎么样?粗略的,像这样(PHP) -
$handle=opendir("scripts/");
while (($file = readdir($handle))!==false) {
echo '<script type="text/javascript" src="$file"></script>';
}
closedir($handle);
Run Code Online (Sandbox Code Playgroud)
rob*_*rob 14
鉴于您需要100%的客户端解决方案,理论上您可能会这样做:
通过XmlHttpRequest,获取该目录的目录列表页面(如果目录中没有index.html文件,大多数Web服务器将返回文件列表).
用javascript解析该文件,拉出所有.js文件.这当然会对您的Web服务器/ Web主机上的目录列表的格式敏感.
动态添加脚本标记,如下所示:
function loadScript (dir, file) {
var scr = document.createElement("script");
scr.src = dir + file;
document.body.appendChild(scr);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93442 次 |
| 最近记录: |