Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

lightbox + bitrix ajax. Некорректная работа.

00 голосов
3
http://osobnyak.support-pc.ru/doors/krasnoderevschik/detail.php?ID=4&TID=2&BID=2

Елементы каталога (при клике на любую из маленьких дверей) меняют друг-друга через ajax. Среди стандартных параметров компонента catalog.element - ajax не было и я дописал его к вызову компонента вручную. Заработало :)
Код
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Title");
?><?$APPLICATION->IncludeComponent("bitrix:catalog.element", "KdElementDetail", Array(
   "IBLOCK_TYPE" => "doors",   // Тип инфо-блока
   "IBLOCK_ID" => $_REQUEST["BID"],   // Инфо-блок
---------------------------------cut-----------------------------------------
   "LINK_IBLOCK_ID" => "",   // ID инфо-блока, элементы которого связаны с текущим элементом
   "LINK_PROPERTY_SID" => "",   // Свойство в котором хранится связь
   "LINK_ELEMENTS_URL" => "link.php?PARENT_ELEMENT_ID=#ELEMENT_ID#",   // URL на страницу где будет показан список связанных элементов
    "AJAX_MODE" => "Y",
    "AJAX_OPTION_STYLE" => "Y",
    "AJAX_OPTION_HISTORY" =>"Y",
    "AJAX_OPTION_JUMP" => "N",
    "AJAX_OPTION_SHADOW" => "N"
   ),
   false
);?> <?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>

При клике на основную картинку, она должна всплыть отдельным окном (пытаюсь сделать через lightbox) в увеличенном виде. Так, в пинципе, и происходит пока не подгрузить аяксом другую дверь. После подгрузки основная дверь ведёт себя как бычная ссылка как будто lightbox в системе отсутствует. Сам lightbox подключаю в шаблоне компонента.
Код
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
$APPLICATION->AddHeadScript('/js/lightbox.js');
$APPLICATION->SetAdditionalCSS("/css/lightbox.css");

К сожалению очень плохо разбираюсь в javascript? поскажите почему так происходит?
спросил 17 Дек, 13 от Kleem (100 баллов)

3 Ответы

00 голосов
придется от одного из них отказаться. Наверно от аякса, как я понимаю он сдесь только для того чтобы картинки менялись местами, выбранная становилась первой и побольше размера.
при отсутсвии аякса бы работало. так как страница бы перезаливалась и ссылка на картинку менялась.
ответил 01 Март, 14 от Grimmi (2,560 баллов)
00 голосов
Ajax меняет не только картинки местами как это может показаться, а полностью всю рабочую область. Это переход от одного элемента информационного блока к другому в пределах раздела. У всех элементов пока что идентичный текст потому и кажется что меняются только картинки. В шапке сайта тяжёлая флеш, поэтому для заказчика переход по элеметам важен именно в таком виде. Выхода у меня, как мне кажется, 2: пофиксить непонятное поведение или самому в ручную реализовать всплывающее окно с картинкой.
Душа у меня не лежит к javascript :) немогу ничего с собой поделать несмотря на то что осознаю необходимость в глубоком изучении. Это как рыбий жир в дестве, полезно и противно. Помогите, кто осилил этот "язык". В чём причина такой странной работы lightbox?
ответил 20 Июнь, 14 от Kleem (100 баллов)
00 голосов
Столкнулся с подобной проблемой: bitrix-овый AJAX+fancybox не работают совместно

Не зарываясь глубоко в код ... есть "костыль" - повторная инициализация lightbox (в моем случае fancybox) в шаблоне компонента.
ответил 20 Окт, 14 от Xame1eon (100 баллов)

Похожие вопросы

0 голосов
8 ответов
спросил 27 Май, 13 от vLumeNv (200 баллов)
0 голосов
9 ответов
спросил 09 Фев, 13 от Kania (5,180 баллов)
0 голосов
4 ответов
спросил 03 Фев, 14 от Jaden (260 баллов)
0 голосов
2 ответов