Drupal 7 + jQuery

Просто и понятно, чтобы самому не забыть: Нельзя в Drupal использовать скрипты jQuery "как есть"!

Подключаем свой файл скриптов в имя_темы.info

scripts[] = bootstrap/js/d_scripts.js

В начало файла добавляем строку

var jQuery = jQuery.noConflict();

Все вызовы $( ) заменяем на jQuery( ). Пример для активного пункта меню (убираем ссылку и класс "active" присваем тегу "<li>")

var jQuery = jQuery.noConflict();
jQuery(function() {
    // активный пункт меню
    jQuery('#main-menu a.active').parent().addClass("active");
    jQuery('#main-menu a.active').parent().html(jQuery('#main-menu a.active').html());
}); // end

Очищаем кеш и проверяем работу.

P.S. Более изящный (правильный) вариант:

 (function ($) {
 $(document).ready(function(){
   $("h3").css('color','red');
 }); 
})(jQuery);

Комментарии

Спасибо. Пригодилось!

Скажите, а где прописывать

var jQuery = jQuery.noConflict(); jQuery(function() { // активный пункт меню jQuery('#main-menu a.active').parent().addClass("active"); jQuery('#main-menu a.active').parent().html(jQuery('#main-menu a.active').html()); }); // end ,

на какой странице и это прописывается в head или bodi

Прописывать нужно в файле javascript, который подключается в .info темы для всех страниц, ну или в head html.tpl.php

Добавить комментарий

CAPTCHA на основе изображений