Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   скрипт срабатывает только при возвращении на страницу (https://javascript.ru/forum/jquery/58919-skript-srabatyvaet-tolko-pri-vozvrashhenii-na-stranicu.html)

Ruslanka 17.10.2015 22:26

скрипт срабатывает только при возвращении на страницу
 
Добрый день
Есть страница со слайдерами http://kashubadesign.ru/new/portfolio-2
При нажатии на любую картинку или на текст "подробнее" открывается ниже картинка увеличенная. При этом блок становится видимым с описанием и слайдером увеличенных картинок.
Вопрос: скрипт срабатывает только при смене окон и возвращении на страницу. Почему? Где закралась ошибка?
Надо сделать точно как тут http://kashubadesign.ru/portfolio/1/

laimas 18.10.2015 15:57

"NetworkError: 404 Not Found - http://kashubadesign.ru/new/templates/kashubadesign/css/template.css"

TypeError: jQuery(...).tooltip is not a function

jQuery('.hasTooltip').tooltip({"html": true,"container": "body"});

Ruslanka 18.10.2015 16:25

Спасибо. Это видела. Но это не отвечает вроде бы за слайдер изображений никак. Там много скриптов на странице. И получается, что скрипты PHoca Gallery, может быть, накладываются, а может ещё что-то.

Меня интересует тот фокус, что картинка побольше, которая берётся из второго слайдера ниже, не открывается, пока не уйдёшь на другое окно виндовс, а потом вернёшься обратно, будто всё и работало. Ошибок в этом он не пишет никаких. Я про эти чудеса спрашиваю, мне очень удивительно.

laimas 18.10.2015 16:28

Не знаю связано или нет, но после перехода ошибок нет. Разберитесь с ними.

Ruslanka 19.10.2015 03:47

С этими ошибками разобралась, а вопрос всё равно остался. Ошибок не выдаёт, а срабатывает всё равно только по уходу и возвращению на страницу. :-?
Я впервые с таким столкнулась, буду рада, если покажете куда копать. :help:

laimas 19.10.2015 04:47

Не все ошибку исправлены, во время загрузки страницы возникают ошибки.
Ну это же надо код смотреть, а это же время. Просто нет подключения нужного, например, нет подключения flexslider и тег script содержит совсем другой код, ссылка "Подробнее" на нерабочей странице это тег span, а не А. Наверное еще что-то есть.

Ruslanka 19.10.2015 15:51

Спасибо за подсказки. Удалила лишнее, что подгружалось, попробовала восстановить порядок выполнения скриптов как на старом варианте. Но проблема того, что всё равно скрипт срабатывал только после смены окон, осталась.

Пришлось делать по-другому, читать мануал про порядок выполнения скриптов, ставить display:block элементу, который должен показываться (в этом случае всё идеально работает, но он должен быть скрыт). И после полной загрузки страницы я его прячу display:none; Так всё работает.

laimas 19.10.2015 16:08

ставить display:block элементу, который должен показываться ... ну это уже мне не ведомо как надо :) , а ошибки нужно устранять обязательно. Собственно если нужно массу объектов скрыть/показать после загрузки документа, то это можно сделать через body, задавая ему после загрузки класс. Элементы же, которые нужно скрыть/показать, должны иметь составной класс, где первым будет имя класса присвоенное body.

Ruslanka 19.10.2015 16:35

Спасибо большое! Видимо, всё равно никуда не уйти от понимания как же всё устроено. Поэтому буду разбираться. В итоге всё равно ведь полетело то, что поудаляла, то есть перестали работать другие элементы на странице. Так что сидеть ещё над учебниками и сидеть...:write:

laimas 19.10.2015 17:51

Цитата:

Сообщение от Ruslanka
В итоге всё равно ведь полетело то, что поудаляла, то есть перестали работать другие элементы на странице.


Ну так надо не удалять, а разбираться почему например тег скрипта в рабочей странице содержит код слайдера, а в нерабочей какой-то Х-код? Сам по себе он же туда не попал, сервер ведь формирует код страниц. Значит причину нужно искать на сервере.

Такое впечатление, словно каким-то образом связано с куками. Куки сохраняются на диск (не сессионные) тогда, когда страница закрывается или происходит переход или обновление страницы. А до этого времени установленные куки находятся в памяти. Поэтому для клиента установленные куки сразу будут и доступны для чтения, а вот сервер установленные им куки сможет прочесть только тогда, когда они будут сохранены на диск, то есть закрыли страницу, обновили страницу или сделали переход.

Ну это только впечатление.


Часовой пояс GMT +3, время: 10:44.