gpt4 book ai didi

javascript - 无法从 (document).ready() 中的另一个 .js 文件调用函数

转载 作者:行者123 更新时间:2023-11-29 23:19:16 24 4
gpt4 key购买 nike

我有 2 个文件。

主.js工具.js

主要.js

$(document).ready( function() {
function instantiate_point_clouds(viewer_settings, cloud_meta) {
}
})

实用程序.js

$(document).ready( function() {

instantiate_point_clouds(viewer_settings, cloud_meta) ---> This is
Uncaught ReferenceError: instantiate_point_clouds is not defined
})

这就是我调用这些 js 文件的方式。

<html>
<head>
<script src='/js/main.js'>
</head>
<body>
<script src='/js/utils.js'>
<body>
</html>

函数 instantiate_point_clouds 执行异步调用,不管它是否应该工作,因为我在 util.js 之前调用 main.js。该函数存在于 main.js 中,但如果从 utils.js 中调用则表示未定义,这是否与 $(document).ready() 有关?

最佳答案

之外定义你的函数
$(document).ready()

因此它将在页面加载时被解析并可用于 $(document).ready()

作为Isaac Abramowitz在评论中指出,当您在示例代码中定义函数时,您是在传递给 $(document).ready() 的匿名函数的范围内执行此操作,第二个调用(无论它是否在同一个文件中)无法访问,因为它们不共享范围。有关此主题的更多信息,请参见 here

顺便说一句,您可以只使用 $(function(){}) 而不是 $(document).ready()

关于javascript - 无法从 (document).ready() 中的另一个 .js 文件调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51366560/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com