Добавить внешние JavaScript


20

Можно ли добавить внешние javascript-коды непосредственно в .info-файл темы?
например scripts [] = http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js


Вы просто хотите добавить CDN-версию jQuery Tools в свою тему или явно спрашиваете, можно ли это сделать из файла .info темы?
— mpdonadio

Явно добавить внешний javascript в файл .info
— JurgenR

Итак, вы хотели добавить его в файл .info и приняли ответ, который вообще не говорит о файле .info и показывает метод drupal_add_js?
— mpdonadio

Да, если это не сработает в информационном файле, я рад наилучшему из возможных решений.
— JurgenR

Ответы:


24

В файле template.php вашей темы используйте drupal_add_js () для метода предварительной обработки страницы (или эквивалентного предварительного процесса).

function hook_preprocess_page(&$vars) {
  drupal_add_js('http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js', 'external');
}

Я получаю ошибку javascript при использовании этой функции, когда я помещаю скрипт в (нижний колонтитул) html.tpl.php, он работает.
— JurgenR

Какая ошибка? Выводит ли Drupal правильно выглядящую разметку скрипта при использовании этой функции, если вы проверяете исходный код?
— drmonkeyninja

Добавление массива опций исправило это. Думаю, это была проблема с весом. drupal_add_js (' cdn.jquerytools.org/1.2.6/jquery.tools.min.js ', массив ('type' => 'external', 'scope' => 'header', 'weight' => 10)) ; Thnx!
— JurgenR

@Jurgen drupal_add_js()также принимает строку как второй параметр; в этом случае он считается индексом типа, используемым в $optionsмассиве. Если вам нужно установить другие параметры, то вы должны использовать массив.
— kiamlaluno

@drmonkeyninja Как добавить JS в любой модуль .. ??
— Nishant

2

Способ добавления javascript зависит от того, для чего вы добавляете javascript. Есть разные способы добавить JS.

  • Определяя в файле theme.info.

  • Добавляя это в строке.

  • Добавление внешнего файла JS.

Вы можете добавить информационный файл JS с этой простой строкой кода

scripts[] = js/myscript.js

Или вы можете использовать функцию php, предоставленную drupal drupal_add_js

Эта функция позволяет вам легко добавить файл JavaScript или помогает установить встроенный код на любой странице вашей темы, и она принимает 5 параметров ( вы видите это в справочнике по API ).

Здесь есть подробный пост .


2
вы не можете определить внешний JS в информационном файле, по- видимому drupal.stackexchange.com/a/196874/12010
— batigolix
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.