为什么我的简单jQuery函数没有定义?

时间:2017-05-15 07:04:26

标签: jquery wordpress

我对jQuery非常陌生,我想了解如何使这个非常简单的jQuery函数能够实际执行。我正在尝试将jQuery应用于WordPress,因此我的代码开始于" jQuery"而不是标准" $"。我想通过这个小测试功能完成的任务就是简单地附加单词" test"到了一个测试块的尽头,但是现在我的功能是返回一个"未捕获的ReferenceError:未定义测试"错误。我试图执行的代码如下所示:

jQuery(function () {
    function test() {
        $( ".about-us" ).append( "<p>Test</p>" );
    }
})

这就是我在页面上调用脚本的方式(最底层):

<script type="text/javascript" src="/mysite/wp-
content/themes/RainForest/slider.js"></script>
<script type="text/javascript">
<!--
test();
//--></script>

任何可以帮助我了解如何解决这个问题和未来难题的见解都将不胜感激。

1 个答案:

答案 0 :(得分:1)

问题是因为您的函数不在第二个<script>块的范围内。您需要将jQuery的document.ready处理程序中的函数定义移到之外。

但请注意,原始代码中的模式非常冗余,因为您仍然包含document.ready事件处理程序。您也可以使用它而不是手动调用test()

另请注意,您需要在页面中包含jQuery.js - 尽管我认为这只是您的问题中的一个错误。试试这个:

jQuery(function() {
  $(".about-us").append("<p>Test</p>");
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="/mysite/wpcontent/themes/RainForest/slider.js"></script>