Javascript 为什么我会得到一个“;“未定义”;声明到jQuery就绪事件处理程序中的函数出错?
我创建了一个通用函数JavaScript文件,其中包含以下代码:Javascript 为什么我会得到一个“;“未定义”;声明到jQuery就绪事件处理程序中的函数出错?,javascript,jquery,Javascript,Jquery,我创建了一个通用函数JavaScript文件,其中包含以下代码: // js/common_functions.js $(document).ready(function () { function showLoader() { if ($("#loading").length > 0) { $("#loading").removeClass("hideElement");
// js/common_functions.js
$(document).ready(function () {
function showLoader() {
if ($("#loading").length > 0) {
$("#loading").removeClass("hideElement");
}
}
});
现在,我已将此文件包含在一个PHP文件中,并使用它,如下所示:
<script type="text/javascript" src="js/common_functions.js"></script>
<script type="text/javascript">
$(document).ready(function () {
showLoader();
});
</script>
您的函数声明位于另一个函数内,因此它的作用域是该函数,在该函数外不可用 不要那样做
使用
ready
事件处理程序是完全没有意义的,因为“定义函数”(您在其中所做的唯一事情)绝对不依赖可用的DOM元素。感谢Quentin,它工作得很好。这是一个非常愚蠢的错误,感谢您的纠正和指点。您只需要在ready函数之外定义。这肯定会起作用,我可能会得到这个问题的否定点,但我会把它保存在服务器上,这可能会对其他人有所帮助。也许你们可以找到一个更好的标题?但这并不容易:)建议我Hugeen,我现在就改变
ReferenceError: showLoader is not defined