我正在为Drupal 7编写一个模块,它有3个子模块。所有子模块都有自己的模块,样式和js文件。 在每个子模块的init函数中,我包含了模块使用的所有javascript文件:
drupal_add_js(path);
除了jQuery之外,一切正常。我尝试了不同的方式:
(function ($) {
alert("1");
})(jQuery);
alert(jQuery('div'));
alert($('div'));
并没有发生任何事情。 试图在我的模块文件中使用jQuery作为内联函数:
drupal_add_js("(function ($) {alert('1');})(jQuery)","inline");
它也不起作用。
在一切正常之前的一周,甚至是基于jQuery的弹出菜单和ajax。但后来我重写了php函数,添加了功能和优化查询(我没有修改正常工作的js文件)。也许我已经更改了一些服务器配置文件(我使用Denver并在localhost上运行项目)。
只有现在我意识到我的jQuery不起作用,我已经测试了所有内容,已经花了2天时间寻找答案。我知道我犯了一些愚蠢而简单的错误,但我无法找到它的位置。也许有人已经有这样的问题,请帮忙。
P.S。:这是我的第一篇文章,请不要过于严厉地评价我
答案 0 :(得分:1)
我会禁用js聚合(如果启用),然后检查源代码以查看这些JS文件的路径是否正确。如果是这样,我会在你的js周围使用Drupal.behaviours,如此处所述http://drupal.org/node/756722#behaviors如果这不起作用,我会检查是否在某处没有出现js错误。