2016-02-23 2 views
2

вопрос о плагине: Вся страница http://alvarotrigo.com/fullPage/fullpage.js после первого сценария прокрутки

Вы можете открыть сайт в любом разделе. Например, эта ссылка открывает сайт в четвертом разделе:

http://alvarotrigo.com/fullPage/#4thpage

Это означает, что сайт сразу начинает прокручивать, как только вы открыли сайт (он прокручивает в четвертом разделе).

Однако у меня есть сценарий (он загружает окно чата), что замедляет этот процесс. Хотя я добавил свой скрипт чата ПОСЛЕ сценария инициализации Fullpage.js, мой сайт сначала загружает окно чата, а после этого Fullpage прокручивает в нужном разделе.

Я хочу, чтобы страница сначала прокрутила страницу вниз до правой части сайта, и как только сайт открыл и прокрутил в нужную секцию, необходимо запустить сценарий окна чата (до тех пор, пока сайт открыт).

Как это осуществить? Я попытался поместить свой скрипт чата в afterLoad и afterRender, но по какой-то причине это делает мой ящик чата вообще не отображающимся. Есть ли способ выполнить некоторые действия после загрузки Fullpage и после первого прокрутки (в открытом доступе) в правый раздел?

+1

Я думаю, что у вас уже есть правильный подход, когда вы говорите, что хотите использовать afterLoad или afterRender для инициализации скрипта чата - это должно работать в принципе. Вы говорите, что окно чата не появляется по какой-либо причине - вы должны выяснить, в чем причина. Вы можете увидеть какие-либо ошибки в консоли JavaScript при загрузке страницы? У вас есть ссылка на вашу страницу? – ilokhov

+0

Спасибо @ilokhov. Это может быть ошибка или что-то в моих кодах. Почему я думал, что afterLoad может быть проблемой, потому что это срабатывает после каждого переключателя раздела (когда вы перемещаетесь по странице между разделами). Я не знаю, влияет ли это на скрипт, так как этот скрипт должен запускаться 1 раз (когда вы сначала открываете сайт). Вот почему моя вторая идея была afterRender, но кажется, что функция не дожидается прокрутки страницы (как объясняется в вопросе), или я могу ошибаться ...как только у меня будет доступная ссылка, я опубликую ее здесь. – Cinzel

+1

Возможно, что требуется время загрузки файлов JS, CSS или SWF, необходимых для запуска этого скрипта. Fullpage.js ждет, пока все элементы сайта не загрузятся, чтобы перейти к разделу. Причина этого заключается в использовании изображений в разделе при использовании 'scrollOverflow: true', поскольку fullpage.js необходимо определить, требуется ли в секции полоса прокрутки или нет, в зависимости от размера загруженного изображения. – Alvaro

ответ

0

Как я уже говорил в предыдущем комментарии:

Вероятно, что время принятия является погрузка JS, CSS или SWF-файлов, необходимых для этого сценария для запуска. Fullpage.js ждет, пока все элементы сайта не загрузятся, чтобы перейти к разделу. Причина этого заключается в использовании изображений в разделе при использовании scrollOverflow: true, поскольку fullpage.js необходимо определить, требуется ли в секции полоса прокрутки или нет, в зависимости от размера загруженного изображения.

Чтобы решить эту проблему, вы можете загрузить элемент динамически с помощью jQuery или ajax.

В противном случае, вы можете редактировать и изменять fullPage.js line 536 это:

$window.on('load', function() { 
    scrollToAnchor(); 
}); 

к этому:

scrollToAnchor(); 

Единственная проблема в том, что вы должны помнить, чтобы изменить эту ситуацию при каждом обновлении fullpage.js.

Не стесняйтесь, чтобы открыть вопрос in fullPage.js github forum, и решение может быть реализовано в будущих версиях.

+0

Ваш ответ был хорошо продуман, но, к сожалению, при удалении $ window.on ('load', function() {...}) ;, и сохраняйте только scrollToAnchor() ;, тогда сайт не прокручивается вообще и больше не может прокручиваться. Каким будет лучший способ динамически загружать скрипт чата после scrollToAnchor() ;. – Cinzel

+0

Я думал о чем-то вроде: $ window.on ('load', function() { scrollToAnchor(); myScript(); }); Но мой сценарий не загружается таким образом. Кто-нибудь, у кого больше технических знаний, чем у меня с решением? – Cinzel

+0

Как я уже упоминал в своем комментарии к вашему оригинальному вопросу: можете ли вы увидеть какие-либо ошибки в консоли JavaScript при загрузке страницы? У вас есть ссылка на вашу страницу? – ilokhov

Смежные вопросы