【问题标题】:Is it possible to force Drupal 8 core Jquery to go to the header?是否可以强制 Drupal 8 核心 Jquery 转到标题?
【发布时间】:2016-12-09 11:48:43
【问题描述】:

我只是想知道是否可以将(仅)JQ 核心文件移动到网站顶部,而不是在</body> html 标记之前。我知道这不是最佳实践,但如果在滑块脚本之前未加载 JQ,我正在使用的 Revolution Slider 将无法工作,我知道,这很奇怪,但我猜这是他们创建它的方式:p。

我已经修改了 core.libraries.yml(实际上我创建了一个补丁和反向补丁以在我更新 Drupal 时应用)并且我已经包含了一个 header:true 语句以便 JQuery 转到 .这不是修改drupal核心的好主意,这就是我寻找更好解决方案的原因。

或者也许实现我正在寻找的最佳方法是用我自己的 JQuery 覆盖核心 JQuery,这样我就可以将它放在我想要的任何地方?我不知道这是否可能:)

谢谢!

【问题讨论】:

  • 为什么不让 jQuery 留在原地,并在其后包含革命滑块 JS?
  • 嗯,我已经试过了。可悲的是它不起作用^^'看起来我必须在生成滑块之前包含所需的JS..
  • 你是如何尝试包含滑块 JS 的?因为如果你做对了,它应该会自动出现在 jQuery(和所有核心 JS)之后。
  • 像往常一样:在我的 theme.libraries.yml 文件中。它在 drupal 的 jQuery 之后运行,但即使它应该 :/.我刚刚切换了 jquery 的核心(只是为了试一试),所以它进入了标题,它工作了 ^^'
  • 嗯,这很奇怪。浏览器控制台的错误说明了什么?

标签: jquery drupal-8


【解决方案1】:

如果您收到“未定义 jQuery”错误,但您的 javascript 文件位于列表中的 jQuery 之后,那么您的问题可能出在其他地方。也许您的模板中有一些内联 javascript 代码?

无需修改 core.libraries.yml 即可将 jquery 推送到标头的一种方法是确保您的 THEME.libraries.yml 中有这些配置:

global-styling:
  header: true
  dependencies:
    - core/jquery

这假设您拥有通常的全局样式库,并且它也列在您的 THEME.info.yml 中。

您可能需要清除缓存才能看到结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 2022-07-13
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    • 2016-05-29
    • 1970-01-01
    相关资源
    最近更新 更多