Форум программистов, компьютерный форум, киберфорум
1С Битрикс
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/26: Рейтинг темы: голосов - 26, средняя оценка - 4.73
Веб-Разработчик
 Аватар для Itachi261092
82 / 82 / 9
Регистрация: 23.01.2012
Сообщений: 702

Кэширование компонента сбивает фотогалерею

24.07.2013, 12:26. Показов 4902. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте уважаемые форумчане, уверен тут есть люди кто сталкивался с подобными вещами. подскажите пожалуйста где искать проблему. у меня настроен компонент bitrix:news не кастомизирвоанный но с пользовательскими шаблонами. и ситуация такая что при выключенном кэше всё работает. но если его включить то через некоторое время перестаёт работать фотогалерея. она у меня сделана в шаблоне детального просмотра. прописаны классы в css и идёт обработка классов через скрипт. галерея fancybox. стандартный простейший функционал. не могу понять где трабл возникает. скрипт добавлен в шаблон news.detail (комплексного компонента). повторюсь - с выключенным кэшем работает всегда. но картинки грузятся долго (их на странице в зависимости от элемента инфоблока до 100 штук может быть) поэтому нужен кэш обязательно. но как только я включаю его - всё везде работает правильно, но не долго. а через некоторое время действие скрипта отключается. картинка не увеличивается а открывается в окне просто путь к файлу на сервере. кэш ставил авто +360000000. Где я лоханулся?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.07.2013, 12:26
Ответы с готовыми решениями:

CreateProcess сбивает курсор
STARTUPINFOA cif; ZeroMemory(&cif,sizeof(STARTUPINFOA)); if(!Block2.isEmpty()){ ...

ОЗУ сбивает драйвер видеокарты
Такие дела, купил новую планку GoodRam DDR2 2Gb 800MHz CL6. Ещё стоит такая же старая, только CL5 (Читал, что они совместимы). С новой...

Scroll сбивает ширину ячеек
Всем привет, как сделать чтобы из-за скрола который справа не портилась ширина ячеек? http://jsfiddle.net/3ctLsaa5/ изначально была...

4
694 / 534 / 40
Регистрация: 22.06.2009
Сообщений: 1,293
24.07.2013, 14:05
Картинка в новом окне может появляться если fancybox не сработал и происходит обычный клик по ссылке без скрипта. Почему он не сработал можно посмотреть в консоли ошибок, в средствах разработчика (например в firebug). Там нужно сделать так, чтобы консоль ошибок не очищалась при обновлении страницы, тогда будет понятно какая ошибка js возникает при клике.

Если ошибок js не возникает, то еще как вариант fancybox может не подключаться со включенным кешем. Это зависит от того как именно подключался скрипт. По правильному дополнительные стили и скрипты надо подключать в файле component_epilog.php
http://dev.1c-bitrix.ru/commun... d/1820.php
1
Веб-Разработчик
 Аватар для Itachi261092
82 / 82 / 9
Регистрация: 23.01.2012
Сообщений: 702
24.07.2013, 17:43  [ТС]
Alorian, большущее спасибо! такое впечатление что в разделе битрикса отвечаете только Вы. да, действительно у меня скрипт подключён тупо в шаблоне компонента через конструкцию
PHP
1
<?$APPLICATION->AddHeadScript('/bitrix/templates/.default/for_testing/script.js');?>
сейчас переделаю в эпилог. когда читал курсы битрикса так и не вдуплил зачем вообще эпилог нужен. теперь начинаю понимать

Добавлено через 55 минут
Alorian, перенёс вызов скрипта и css отвечающих за галерею из шаблона в эпилог по примеру из вашей ссылки
component_epilog.php:
PHP
1
2
3
4
5
6
7
8
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();?>
 
<?
//подключаем скрипт и стиль фотогалереи потому что компонент кэшируется!
$APPLICATION->SetAdditionalCSS('/bitrix/templates/.default/fancybox/source/jquery.fancybox.css');
$APPLICATION->AddHeadScript('/bitrix/templates/.default/fancybox/source/jquery.fancybox.js');
//$APPLICATION->AddHeadScript('/bitrix/templates/.default/fancybox/source/jquery.fancybox.pack.js');
?>
- все прекрасно заработало (однако при этом в коде страницы, если из хрома смотреть, вызова этих скрипта и цсс всё равно нет. не могли бы вы понятным чайнику языком объяснить как это происходит? то есть я понимаю что скрипт и стиль где то уже после вывода шаблона подключились и сработали. но не понимаю как это сделано и почему в коде страницы в таком случае отсутствует их вызов?
0
694 / 534 / 40
Регистрация: 22.06.2009
Сообщений: 1,293
26.07.2013, 09:41
Цитата Сообщение от Itachi261092 Посмотреть сообщение
однако при этом в коде страницы, если из хрома смотреть, вызова этих скрипта и цсс всё равно нет
Должны быть, иначе бы не заработало.
$APPLICATION->AddHeadScript должен добавлять именно в <head>
Как вариант у вас включено объединение js и css файлов, тогда просто объединенный файл изменится.
1
Веб-Разработчик
 Аватар для Itachi261092
82 / 82 / 9
Регистрация: 23.01.2012
Сообщений: 702
29.07.2013, 12:36  [ТС]
Alorian, стили на элементах есть. а в хтмл прямого явного вызова нет. но есть уже применённые стили фэнсибокса на некоторых элементах. странно как то
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.07.2013, 12:36
Помогаю со студенческими работами здесь

Float сбивает определение элемента по наведению
Есть код:&lt;!doctype html&gt; &lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt; &lt;head&gt; &lt;title&gt;resizer&lt;/title&gt; &lt;meta...

При добавлении элементов в ListBox сбивает выбранный элемент
Добрый день. Как решить такую проблему? ListBox привязан к BindingSource. В BindingSource во время работы программы добавляются новые...

Создать игру где летят самолеты и пушка внизу их сбивает
как в формах реализовать полет самолетов с права на лево по экрану

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

Посоветуйте фотогалерею
Здравствуйте. Помогите найти нужную галерею или подсказать как можна реализовать следуешее: Нужна галерея похожая на Fancybox, что бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru