JS 文件是按顺序加载的。因此,在您的 HTML 中,只需将 .js 文件放在 jQuery 和 cordova 之后,它就不会在两者都加载之前运行。
<script src="jQuery"></script>
<script src="cordova"></script>
<script src="yourScript"></script> <!-- this won't run before both jQ and cordova are loaded -->
至于准备好的事件,如果您不想嵌套它们,您可以在所有库准备好时构建自己的事件:
var listener = {
jquery: false,
cordova: false,
fire: function(e) {listener[e] = true; if (listener.jquery && listener.cordova) go();
};
document.addEventListener("deviceready", function(){listener.fire('cordova'), false();
$(document).ready(function(listener.fire('jquery')){});
function go() {
// your code here
}
这将起作用,并且 go() 将在所有内容加载后触发,但是我真的不确定您是否真的需要所有这些,并且有更简单的方法来做到这一点。