组合jQuery document.ready函数
我有一个旧而混乱的站点,我正在尝试整理一些jQuery代码,以使其更易于维护,并希望将所有document.ready函数整合到一个调用中。问题是每个页面都有一组不同的包含项,其中一些包含项有自己的.ready函数 我想做的是把这个放在主页上:组合jQuery document.ready函数,jquery,document-ready,Jquery,Document Ready,我有一个旧而混乱的站点,我正在尝试整理一些jQuery代码,以使其更易于维护,并希望将所有document.ready函数整合到一个调用中。问题是每个页面都有一组不同的包含项,其中一些包含项有自己的.ready函数 我想做的是把这个放在主页上: var documentReadyFunction = function() { //do something }; 在我的头文件/脚本文件中包含以下内容: jQuery(document).ready(function() { if
var documentReadyFunction = function() {
//do something
};
在我的头文件/脚本文件中包含以下内容:
jQuery(document).ready(function() {
if (typeof documentReadyFunction != 'undefined') {
documentReadyFunction();
}
});
如果我能在一个地方知道所有on-ready函数,这很好,但我想做的是从两次调用之间的文件中添加更多脚本以在.ready中运行-关于如何实现这一点或这是一个好主意的任何建议?您可以尝试这种方法
<script type="text/javascript" >
$(function(){
init();
});
function init(){
someFunction();
//other init stuff
}
function someFunction(){
}
</script>
不确定您是否意识到这一点,但我非常确定允许多次调用$(document).ready(fn),并且它们不会覆盖原始函数,但也会调用它
有关更多信息,请参阅。请注意,如果其中一个出现错误,以下函数将不会执行。我意识到您可以执行多个.ready调用,但有些函数需要按特定顺序运行(例如,延迟加载图像和应用jcarousel需要以特定方式运行,才能将两者应用于同一组图像)。我希望能够声明它们的使用位置,然后按照正确的顺序加载它们(而不是必须在页面上做手脚,使它们的.ready()看起来正确。)-我想知道如何创建一个函数数组,我总是在开始时推一个函数,在结束时推另一个函数。
$(document).ready(function() {
// some code here
});
$(document).ready(function() {
// other code here
});