yang8210 2008-11-06 16:50
浏览 258
已采纳

关于javascript控制js加载顺序的问题

条件(1): a.js,b.js,c.js,d.js
(2): 动态加载顺序 a.js加载完成,再加载b.js,一次类推
(3): js代码兼容IE 和FIREFOX
(4):请给出完成的JS 代码 ,我会验证代码 。哈哈
谢谢各位高人!!!
[b]问题补充:[/b]
大家不要为了分数就乱来,我明确说一下,我要严格控制JS加载顺序。

to:linpyi

document.write("");

document.write("");

你这样可以控制 a.js加载完了,再加载b.js吗 ,估计你没有实践过

to:火星
链接内容我看了,不过不是我期待的结果。
[b]问题补充:[/b]
to:black.angel

ajax是一个方案,不过ajax涉及到跨域问题,局限性太大吧
[b]问题补充:[/b]
to: linpyi

--不知道你的a.js b.js c.js中间有什么特别的联系,或者有什么值需要共享---

比如:a.js是一些公用的方法,b.js,c.js都会依赖a.js
场景之一:首先调用了c.js的方法,c.js的方法又调用a.js的方法,如果a.js没有加载完成的话,调用了c.js的方法就会找不到方法

to: black.angel 给出的在主页面中写一个递归函数
理论上是一种解决方案

to:all
有没有更合理的方案呀 期待中。。。

  • 写回答

7条回答 默认 最新

  • Lucifer_can 2008-11-07 11:25
    关注

    如果这样的话,那只能用一个比较贱的办法了。
    就是在a.js,b.js,c.js的最尾部定义一个变量。例如a.js最后定义了一个 _tempA = '123123'

    那么在主页面中写一个递归函数

    function a(){
    ....... ....

    if(_tempA==null&&_tempA==undefind){
    // _tempA 未初始化回调a()方法
    }
    //直到 _tempA 定义成功,代表a.js加载完毕.....执行下面的方法
    .....
    }

    除开这个比较贱的办法之外实在想不出有啥好办法了。。。。。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作