Подключение jQuery Plugin в Drupal 7

Главные вкладки

Аватар пользователя Funtik44 Funtik44 23 августа 2011 в 15:12

Подскажите, уже голова кипит... Нужно вывести на страницу page.tpl.php плагин jQuery. Я делал все вот по этой инструкции - http://www.drupal.ru/node/55083

1. По данной инструкции не понятен шаг 7: в page.tpl.php нет тегов <HEAD>.
2. И в шаге 8, в этом файле (page.tpl.php) нет такой строки:
  <?php print $closure ?>

Подскажите в чем ошибка действий? Что не так? И вообще, есть ли где-нибудь правильная последовательность действий по подключению плагина jQuery?

Комментарии

Аватар пользователя leovka leovka 23 августа 2011 в 16:00

"Funtik44" wrote:
1. По данной инструкции не понятен шаг 7: в page.tpl.php нет тегов .

7. Открываем файл page.tpl.php и между тэгами HEAD вставляем код:

$.fn.cycle.defaults.speed = 900;
$.fn.cycle.defaults.timeout = 6000;

Тебе не обязательно это в head писать. Попробуй просто вставить в page.tpl.php

"Funtik44" wrote:
2. И в шаге 8, в этом файле (page.tpl.php) нет такой строки:
<?php print $closure ?>

И правда е очень понятно что у тебя за тема такая. Но если нет, то допиши эту строчку прямо перед тегом

Аватар пользователя digital_sword digital_sword 23 августа 2011 в 16:41

Не понятно для чего closure, не понятны комментарии. И зачем вообще его подключать тоже не ясно...

1. Друпал поддерживает jQuery, библиотека встроена, подключать ничего не надо.
2. Подключать ваш js скрипт надо так для 7ки:

<?php
drupal_add_js('путь_к_файлу/файл.js');
?>
Аватар пользователя Funtik44 Funtik44 23 августа 2011 в 17:01

"digital_sword" wrote:
Не понятно для чего closure, не понятны комментарии. И зачем вообще его подключать тоже не ясно...

1. Друпал поддерживает jQuery, библиотека встроена, подключать ничего не надо.
2. Подключать ваш js скрипт надо так для 7ки:

<?php
drupal_add_js('путь_к_файлу/файл.js');
?>

Т.е. Я просто открываю page.tpl.php и верху кода добавляю:

<?php
drupal_add_js('путь_к_файлу/файл.js');
?>

А в теле вставляю:

<div class="pics">
    <img src="images/beach1.jpg" width="200" height="200" />
    <img src="images/beach2.jpg" width="200" height="200" />
    <img src="images/beach3.jpg" width="200" height="200" />
</div>

В CSS добавляю:

.pics {  
    height:  232px;  
    width:   232px;  
    padding: 0;  
    margin:  0;  
}
 
.pics img {  
    padding: 15px;  
    border:  1px solid #ccc;  
    background-color: #eee;  
    width:  200px;
    height: 200px;
    top:  0;
    left: 0
}

А куда тогда вставить (или создать для этого кода отдельный файл js и именно к нему указать путь?):

$('#s4').cycle({
    fx:      'scrollDown',
    speed:    300,
    timeout:  2000
});
Аватар пользователя vitalii.stymkovskyi vitalii.stymkovskyi 23 августа 2011 в 18:14

Привет, тоже была такая проблема, вот вроде правильное и рабочее решение
файл скрипта подключаешь в файле .info
scripts[] = js/XXXXXXXXX.js

потом создаешь свой файл xxxxxxx.js и в нем пишешь код, но не так как раньше, а например вот так:

jQuery.noConflict()(function(){
        jQuery('#sidebar-left .block .content ul li a').wrap('<span></span>');
})(jQuery);

если у тебя есть готовый плагин то просто подключаешь его в файле .info

по другому у меня не получилось ((

Аватар пользователя digital_sword digital_sword 23 августа 2011 в 19:41

"Funtik44" wrote:
Т.е. Я просто открываю page.tpl.php и верху кода добавляю:

Насчет page.tpl.php - не знаю, вообще должно работать. В блоке (с пхп фильтром) точно будет.
В теле и в CSS - ты правильно написал.
"Funtik44" wrote:
А куда тогда вставить (или создать для этого кода отдельный файл js и именно к нему указать путь?):

Ну как же. drupal_add_js('путь_к_файлу/файл.js');
файл.js - твой файл с кодом. Отдельный. А путь_к_файлу - путь к нему. Допустим, js код вставляешь в файл code.js, и кидаешь его в папку misc, соответственно в блоке пишешь

<?php
drupal_add_js('misc/code.js');
?>

А обработчик jquery уже подключен в друпале. Отдельно его не надо. Только твой скрипт.

Аватар пользователя leovka leovka 23 августа 2011 в 20:12

"RxB" wrote:
Шутник, марш читать JS reference

Это не я написал - это http://www.drupal.ru/node/55083

"Funtik44" wrote:
Подскажите, уже голова кипит... Нужно вывести на страницу page.tpl.php плагин jQuery. Я делал все вот по этой инструкции - http://www.drupal.ru/node/55083[/quote]