为什么我的内联JQuery代码工作,但在主题的`javascript`目录中不起作用?

时间:2015-06-11 20:51:45

标签: jquery moodle

我正在运行Moodle 2.6.5。我正在编写一个Moodle主题,并且主题的.js目录中的javascript文件 中的 JQuery代码正在运行,并且从那以后我一直在改变PHP和CSS,但我认为我没有改变Javascript部分或与JavaScript相关的任何内容。

今天我查了一下,发现它没有用, ,而添加到布局文件中的任何内联JQuery代码都能正常工作。 我通过添加警告声明来确认Javascript文件的顶部<moodle-root>/theme/testy/javascript/slideshow.js

$(document).ready(function() {
    alert('Meh!');
    ...
});

无效。然后我将以下脚本添加到<moodle-root>/theme/testy/layout/frontpage.php

的末尾
...
    <script>
        $(document).ready(function() {
            alert('Nah!');
        });
    </script>
</body>

有效。

我追加JQuery的步骤:

  1. <moodle-root>/theme/testy/lib.php

    function theme_testy_page_init(moodle_page $page) {
        $page->requires->jquery();
    }
    
  2. config.php

    $THEME->javascripts = array('slideshow', ...);
    
  3. 然后在<moodle-root>/theme/testy/javascript/slideshow.js

    $(document).ready(function() {
        alert('Meh!');
        ...
    });
    
  4. 不提醒任何事情。

    为什么会这样?我应该怎么做才能解决它?

0 个答案:

没有答案