javascript - 如何在 Drupal 7 中订购 javascript 文件以加载 Foundation 5

标签 javascript drupal drupal-7 zurb-foundation drupal-theming

我尝试在我的新“玩家”主题中加载 Foundation。这是我从头开始制作的主题。 现在我正在尝试在预处理中加载foundation.min.js:

function player_preprocess_page(&$variables, $hook) {

  $options = array('scope' => 'footer', 'weight' => 1000 );
  drupal_add_js(drupal_get_path('theme', 'player') . '/js/foundation.min.js', $options);
  $foundation='jQuery(document).foundation();';
  $options['type']='inline';
  drupal_add_js($foundation, $options);
}

当我加载我的网站时,我有两个 Uncaught ReferenceError: jQuery is not Defined 错误(一次针对 Foundation.min.js,一次针对 jQuery(document).foundation();)

首先我认为这是因为 jQuery 是在 jQuery(document).foundation(); 之后加载的,但似乎默认文件(包括 jQuery)是在 header 中加载的(我做了一个 var_dump 来检查。)我的脚本被放置在 页脚

  'misc/drupal.js'
  'misc/jquery.js'
  'misc/jquery.once.js'
  'sites/all/themes/player/js/theme.js'
  'sites/all/themes/player/js/uikit.js'
  'misc/jquery.cookie.js'
  'misc/jquery.form.js'
  'misc/progress.js'
  'misc/ajax.js'
  'misc/ui/jquery.ui.core.min.js'
  'misc/ui/jquery.ui.widget.min.js'
  'misc/ui/jquery.ui.mouse.min.js'
  'misc/ui/jquery.ui.draggable.min.js'
  'misc/ui/jquery.ui.resizable.min.js'
  'sites/all/modules/devel_themer/devel_themer.js'
  'sites/all/modules/devel/devel_krumo_path.js'
  'sites/all/modules/devel/krumo/krumo.js'
  'misc/jquery.ba-bbq.js'
  'modules/overlay/overlay-parent.js'
  'modules/toolbar/toolbar.js'

所以我不明白。这肯定是一个常见的情况,但我在网上找不到任何帮助资源。

最佳答案

首先加载jquery,然后再加载其他内容。

像这样:

'misc/jquery.js'  // <---- move this up
'misc/drupal'
'misc/jquery.once.js'
'sites/all/themes/player/js/theme.js'
'sites/all/themes/player/js/uikit.js'
'misc/jquery.cookie.js'
'misc/jquery.form.js'
'misc/progress.js'
'misc/ajax.js'
'misc/ui/jquery.ui.core.min.js'
'misc/ui/jquery.ui.widget.min.js'
'misc/ui/jquery.ui.mouse.min.js'
'misc/ui/jquery.ui.draggable.min.js'
'misc/ui/jquery.ui.resizable.min.js'
'sites/all/modules/devel_themer/devel_themer.js'
'sites/all/modules/devel/devel_krumo_path.js'
'sites/all/modules/devel/krumo/krumo.js'
'misc/jquery.ba-bbq.js'
'modules/overlay/overlay-parent.js'
'modules/toolbar/toolbar.js'

关于javascript - 如何在 Drupal 7 中订购 javascript 文件以加载 Foundation 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28508955/

相关文章:

css - 在 Drupal 中将 block 并排放置

javascript - 显示/隐藏 JavaScript 的问题

javascript - AXIOS VueJs 在 v-for 中传递响应参数

php - 如果没有用户登录则缺少js(drupal)

mysql - Drupal - 哪个 MySql 表包含 $footer 消息

Drupal 6 用户密码导入 Drupal 7

jquery - Drupal 7 Nivo slider 错误

javascript - 对 drupal 模块的 Ajax 调用不起作用

javascript - 辅助功能:2 个链接具有相同的文本和不同的 HREF

javascript - 根据 JS 确认框防止更新面板中的回发