javascript - 使用 jQuery 从单个加载语句中的多个文件调用函数

标签 javascript jquery

我试图用jQuery实现最基本的include,即在DOM准备好时从多个文件加载函数,但显然事实证明并没有如此琐碎:

index.html

<script type="text/javascript" src="res/scripts.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        alert("Hello world!");
        foo();
        bar();
    });
</script>

scripts.js

function foo(){
        alert("Hello from foo!");
}

function bar(){
        alert("Hello from bar!");
}

alert("Hello world!"); 是唯一按预期执行的语句。与之前的策略 (window.attachEvent) 一样,检查文件夹位置

我尝试将 .ready() 语句移至 scripts.js 文件,但这并没有多大帮助。

任何建议我都会非常感激。非常感谢。

更新

目前我正在以这种方式处理加载函数:

// Based on "Flexible JavaScript events" by John Resig: http://goo.gl/xLn4S
function addEvent( obj, type, fn ) {
    if ( obj.attachEvent ) {
        obj['e'+type+fn] = fn;
        obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
        obj.attachEvent( 'on'+type, obj[type+fn] );
    } else
        obj.addEventListener( type, fn, false );
}

function removeEvent( obj, type, fn ) {
    if ( obj.detachEvent ) {
        obj.detachEvent( 'on'+type, obj[type+fn] );
        obj[type+fn] = null;
    } else
        obj.removeEventListener( type, fn, false );
}

addEvent(window, 'load', foo);
addEvent(window, 'load', bar);

最佳答案

$(document).ready() 在 dom 完成后执行,这可能发生在下载外部 javascript 文件之前,因此 foo 和 bar 可能尚未定义。

关于javascript - 使用 jQuery 从单个加载语句中的多个文件调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6231721/

相关文章:

javascript - 如何检测字符串 `article/page/inc/3/4` 在 `inc` 的最后第三个索引中有 `/` ?

javascript - 自定义侧边栏嵌套菜单。我无法打开嵌套菜单

javascript - 有没有一种程序方法可以找到将 "display:none"设置为元素的 JavaScript 代码片段?

javascript - 如果可见,则添加 div 选择以在最后获得总计

需要修改 Javascript/Jquery 才能正常工作吗?

asp.net-mvc-4 - 不使用 jquery 和 AJAX 在 mvc4 View 中弹出成功警报

jquery - jQuery 中的复合选择器

javascript - 无论如何要为 ionic 范围 slider 中的圆形按钮分配默认位置?

Android - Chrome SlideToggle 在滚动时关闭

javascript - 使用主过滤器 "with multi"和辅助过滤器 "only one"过滤列表结果