Всем привет.
Решил, не долго думая, вывести Яндекс кнопку, чтобы менялся номер кошелька, испортил страницу Друпала. Кнопка вывелась нормально, но пропали вкладки редактирования и просмотра, меню администратора потеряло фиксацию, стало ездить вместе со страницей.
Вывел в блоке, вот содержимое:
var p = '<p id="zag" class="zagolovok">';
var fio = document.getElementsByClassName('field field--name-field-fio field--type-string field--label-above')[0].getElementsByClassName('field__item')[0].innerHTML;
var lich = ' - личный кошелёк.<p>';
var item = document.getElementsByClassName('field field--name-field-koshelek-yandeks field--type-string field--label-above')[0].getElementsByClassName('field__item')[0].innerHTML;
var ifr1 = '<iframe src="https://money.yandex.ru/quickpay/shop-widget?writer=seller&targets=%D0%9...';
var ifr2 = '" width="406" height="240" frameborder="0" allowtransparency="true" scrolling="no"></iframe>';
var iframe = p + fio + lich + ifr1 + item + ifr2;
document.write(iframe);
}
koshelek_item();
Блок разместил на страницах /user/*
В чем причина? Не по правилам вывел JS? Но ведь Друпал глотает. От чего у него разметка едет?
Комментарии
Навскидку вижу, что тег
<p>
два раза открывается и ни разу не закрывается. Формально это не ошибка, но попробуйте всё же написать нормальный HTML. И вообще прогоните всю страницу через валидатор.Точно, слэшь во втором теге пропустил, а насчет валидатора точно, я и забыл, сервисы же есть.
Спасибо.
Короче вывод я такой сделал, не надо ни чего выдумывать, хотел по-быстрому, сложить все в одно место и запустить. Нет, так не получается... Разложил все по местам и сразу заработало. Модуль JS/CSS Injector прекрасная подмога в этом деле.
Модуль JS/CSS Injector - это ад веб-разработчика. Для тех, кто его написал и использует в аду есть отдельный котел