Добавить js

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

Аватар пользователя illureal illureal 18 июня 2011 в 5:48

Хочу подключить на сайт фидбэк от copiny.com

на сайте дали код:

<script type="text/javascript" charset="utf-8">
var proto = (document.location.protocol=='https:')?'https:':'http:';
var host = proto+'//widget.copiny.com';
document.write(unescape("%3Cscript src='" + host + "/static/js/widget.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript" charset="utf-8">
        var copinyWidgetOptions = {
        position: 'left',
        hostcommunity:'http://drestime.copiny.com',
        newwindow: '0',
        type: 'question',
        color:    '#ff8400',
        border:   '#ffffff',
        round:    '1',
        title:    'Задайте ворос',
        cache:   'dd48d47ebfbba9ace103dd09559a66f4/dd48d47ebfbba9ace103dd09559a66f4/ejOwVXUxULU0B5FOBmDSBIltqepiqGphBGabaoMpCMcVLGGAxDYEAA--',
        community:1664
};
initCopinyWidget(copinyWidgetOptions);
CopinyWidget.showTab();
</script>

Код разделил на 2 файла и в page.tpl.php вставил в head:
<?php drupal_add_js("sites/all/themes/dress/templates/feed.js", 'theme'); ?>
<?php drupal_add_js("sites/all/themes/dress/templates/feed1.js", 'theme'); ?>

Не работает. Пробывал варианты прописывать без путей, тоесть просто feed.js и feed1.js

Комментарии

Аватар пользователя beepbooptodelete beepbooptodelete 18 июня 2011 в 15:08

А зачем в page.tpl делать drupal_add_js? Там это просто на HTML пишется. И хук drupal_add_js нужно запускать до запуска темизации. И вообще это делается через theme_name.info.

Аватар пользователя Xermit Xermit 18 июня 2011 в 20:03

не работает так как код ниже выполняется только когда встроен в тело страницы, а не вынесен в javascript файл, ссылка на который стоит в head секции страницы

....
document.write ...
....
Аватар пользователя beepbooptodelete beepbooptodelete 18 июня 2011 в 21:07

Ну тогда ибо вставлять код в тело страницы, либо ждать JS-гуру. Мне уже давно тоже интересно узнать решение этой проблемы.

Хотя вместо document.write() можно по идее в вынесенном JS файле писать примерно так:

document.head.innerHTML+=('...')

Но не знаю политкорректно ли это.

UPD
А вот так кажись немного получше будет (это пример). Только на счет работы в IE не уверен.

var line=document.createElement('style')
line.innerText='body{background:#f00}'
document.head.appendChild(line)

UPD2
Первый скрипт не надо паковать в файл. Вместо него достаточно написать:

А со вторым проблем не должно было возникнуть.