【发布时间】:2017-08-31 07:13:53
【问题描述】:
谁能帮我解决这个问题?
如果我有这个工作示例:
var Login = function() {
var handleLogin = function() {//code here
}
var handleForgetPassword = function() {//code here
}
var handleRegister = function() {//code here
}
return {
init: function() {
handleLogin();
handleForgetPassword();
handleRegister();
}
};
}();
jQuery(document).ready(function() {
Login.init();
});
但是下一个例子给出了一个错误。即使我确定文件已加载。我无法确定函数的范围。
<script src="javascriptLoginfile.js" type="text/javascript"></script>
<script>
jQuery(document).ready(function() {
Login.init();
});
</script>
错误
未捕获的引用错误:未定义登录 在 HTML 文档。 (登录:160) 在我 (jquery.min.js:2) 在 Object.fireWith [as resolveWith] (jquery.min.js:2) 在 Function.ready (jquery.min.js:2) 在 HTMLDocument.K (jquery.min.js:2)
【问题讨论】:
-
也许 javascriptLoginFile.js 有一些错误在 Login 完全实例化之前停止执行?
-
你提到的文件是完全一样的文件,除了最后这部分。 jQuery(document).ready(function() { Login.init(); });
-
我已经验证了你的代码并且工作正常,即在一个单独的 JS 文件中登录函数代码并从 html 页面调用函数,在 jQuery 文档上准备好。没有问题(在我的机器上本地测试)。
-
我对您在这里想要实现的目标感到困惑。无论哪种方式,您最好看看原型对象是如何工作的,您是否使用任何 IDE 或 JavaScript linter?他们可能会通过指出一些我认为是问题所在的语法错误来帮助您。
-
将 Sublime 3 与 Linter 一起使用,没有错误。 @PhaniKumarM 感谢您的验证。它可能与以前加载的脚本有关。我会调查的。到目前为止谢谢!
标签: javascript jquery