jquery - 我有多少个 $(document).ready() 有什么区别吗?

标签 jquery

我了解 jQuery,我只是想问,这两个代码示例之间有什么区别(我知道,它会做同样的事情,但我很好奇,第二个示例是否有特定的内容。

示例 1:

$(document).ready(function() {
    // some code #1
    // some code #2
    // some code #3
});

这里将所有 JS 集中在一处。

示例 2:

$(document).ready(function() {
    // some code #1
});

$(document).ready(function() {
    // some code #2
});

$(document).ready(function() {
    // some code #3
});

这些函数(DOM 就绪)放置在不同的 JS 文件中。

我只是在想,它将如何处理,但我猜它会在DOM加载之后执行,然后按照顺序,在HTML中如何调用。

最佳答案

传递给 $(document).ready() 的每个单独函数都会为变量和函数创建自己的作用域,这可能会导致相当大的差异。举这两个例子:

$(document).ready(function() {
    function viewEvent(event) {
        console.log(event);
        return false;
    }

    $('a').on('click', viewEvent);
    // works fine, clicking on an <a> element will log the event object
});

然后:

$(document).ready(function() {
    function viewEvent(event) {
        console.log(event);
        return false;
    }
});


$(document).ready(function() {
    $('a').on('click', viewEvent);
    // won't work, viewEvent is out of scope here
});

关于jquery - 我有多少个 $(document).ready() 有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19999304/

相关文章:

javascript - 如何在着陆页图形上添加鼠标悬停图像

javascript - 从 Flowplayer 输出当前剪辑文件名或 URL

javascript - 滑入 div 不会重排整个页面

php - 在 ajax 调用的页面中创建弹出菜单

javascript - 保护客户端 Web 服务的策略

jquery - 使 JQuery UI 对话框自动扩大或缩小以适应其内容

jquery - 在页面加载之前运行 JQuery

javascript - 检查空数据库值

javascript - JavaScript 中的 getJSON

php - 尝试在 json 数组中搜索