0

对于我正在从事的项目,我遇到了一个小的架构问题。基本上,我已经将所有 Javascript 逻辑拆分为各种文件,其中之一是interface.js. 在这个文件中,我有很多 jQuery 代码,$(document).ready()但我也有一些需要从其他 JS 文件调用的函数,例如:

function hideProgressBar() {
    $('.progress').hide();
}

$(document).ready()在希望 jQuery 在它们被执行时被加载之后,我已经声明了这些函数,并且在实践中这似乎确实有效。有没有更好的方法来做到这一点?有哪些风险?

4

2 回答 2

0

尝试用纯js制作。

var array_el = document.getElementsByClassName('progress');
if (array_el)
{
    var needed_el = array_el[0];
    needed_el.style.display = 'none';
}
于 2013-07-08T14:09:56.583 回答
0

你可以在你的函数中调用 document.ready 。

function hideProgressBar() {
    $(function(){
        $('.progress').hide();
    });
}

您还可以在一个大的 document.ready 调用中声明所有函数。

$(function(){
    window.hideProgressBar = function () {
        $('.progress').hide();
    };
});

但是,通常这些类型的函数是事件或由 jquery 事件调用,这意味着文档已经准备好。

于 2013-07-08T14:08:57.100 回答