脚本文件中的函数未被调用

Mav*_*ven 0 html javascript jquery

在我,script.js我有这个:

$(function () {
   function addColors(basicColors) {
      ...
   }
});
Run Code Online (Sandbox Code Playgroud)

并在HTML:

<head>
<script src="scripts/script.js"></script>
</head>
<body>
   ...
<script>
   ...
   addColors(basicColors);
</script>
...
Run Code Online (Sandbox Code Playgroud)

但在控制台我得到了

Uncaught ReferenceError: addColors is not defined
Run Code Online (Sandbox Code Playgroud)

正确引用脚本文件,因为该文件中定义的其他功能正常工作.

fzz*_*fzz 5

这是一个范围问题.addColors作为本地函数定义匿名函数传递给jQuery的页面加载时(在执行$(function() { ... })).在该功能之外,addColors没有定义.

如果你想addColors成为全球性的,你可以将之前定义它$(function() { ... })script.js.