当一个文件已经缓存时,Yepnope 不会触发完成或回调

Posted

技术标签:

【中文标题】当一个文件已经缓存时,Yepnope 不会触发完成或回调【英文标题】:Yepnope does not fire complete or callback when one file is already cached 【发布时间】:2013-01-23 12:53:40 【问题描述】:

我将 yepnope 与 jQuery Address 一起使用。在某些 yepnope 调用中,某些要检索的文件可能之前已加载。但是,当这种情况发生时,yepnope 不会触发完成或回调。我该如何解决这个问题?

yepnope(
load: ['/js_scripts/jquery.selectbox-0.2.min.js','/js_scripts/jquery-ui-1.10.0.custom.min.js','/js_scripts/jquery.ba-throttle-debounce.min.js','/css/jquery-ui-1.8.23.custom.css','/js_scripts/search.js'],
    callback: 
        "search.js": function () 
            doSearch();
        
    
);

所以基本上我希望它以与 Query.getScript 相同的方式工作。无论检索到的文件是否已下载或已缓存,请始终执行回调。或者我应该只使用 getScript?

【问题讨论】:

【参考方案1】:

改用 LABjs 修复它。通过 LABjs 我可以做到:

$LAB
.script('/js_scripts/jquery.selectbox-0.2.min.js','/js_scripts/jquery-ui-1.10.0.custom.min.js','/js_scripts/jquery.ba-throttle-debounce.min.js','/js_scripts/search.js')
.wait(function() // wait for all scripts to execute first
    doSearch();
);

它会一直加载。 http://labjs.com/documentation.php

【讨论】:

太好了。每当我有时间我会调查它。 LAB 的问题是它不支持 css 而 yepnope 支持 我看不出实验室两年没有更新的问题。当某事有效时,无需仅为执行此操作而创建更新。

以上是关于当一个文件已经缓存时,Yepnope 不会触发完成或回调的主要内容,如果未能解决你的问题,请参考以下文章

当 runloop 被阻塞时,NSTimer 不会触发

如何在加载页面时触发缓存文件?

当 UIAlertController 处于活动状态时,VoiceOver Z 手势不会触发

Azure 逻辑应用程序:Azure DevOps“当工作项关闭时”触发器有时不会触发

Nuxt / Vuejs当页面完成呈现所有组件时将触发的事件

pdfjs获取渲染结束