В моем проекте Wordpress для переходов используется Barba.js. Я использую Fluent Forms, и когда пользователь заходит на сайт через страницу с формой, все работает нормально. Однако если вы уйдете, а затем вернетесь или перейдете на страницу формы с другой, этого не произойдет.
При первой загрузке страницы формы Wordpress внедряет логику Fluent Form, и она работает. Об этом свидетельствует, среди прочего, скрипт, который отображается в конце тела только тогда, когда точкой входа является страница формы:
...
Общая структура веб-сайта в формате HTML:
...
...
При переходе на страницу формы логика поставляется с HTML, но Барба заменяет только то, что находится внутри контейнера. Каков правильный подход к повторной инициализации такого кода? Моя проблема конкретно связана с Fluent Form, но как лучше всего запускать внешний код с помощью Barba?
Мой текущий обходной путь — принудительно использовать навигацию вместо перехода при переходе на страницу формы.
Это полная настройка Barba:
barba.init({
// Logic to force navigation to the fluent form page
prevent: ({ event, href }) => {
const hrefPath = (() => {
try {
return new URL(href, window.location.origin).pathname;
} catch (e) {
return href;
}
})();
if (hrefPath === "/contact-us/" || hrefPath === "/contact-us") {
return true;
}
if (event.type === "click" && href === window.location.href) {
event.preventDefault();
event.stopPropagation();
if (window.scrollY !== 0) {
gsap.to(window, { scrollTo: 0, duration: 0.5 });
}
return true;
}
},
transitions: [
{
name: "default",
leave(data) {
try {
const tl = gsap.timeline();
// animating the page out
return tl; // returning the "thenable" timeline
} catch (e) {
console.log("BARBA LEAVE ERROR", e);
}
},
enter(data) {
try {
// clean up gsap scrolltriggers
// update page title
} catch (e) {
console.error("BARBA LEAVE ERROR", e);
}
},
after(data) {
try {
// initialize page-specific logic
initializePage();
const tl = gsap.timeline();
// animate new page in
return tl;
} catch (e) {
console.error("BARBA AFTER ERROR", e);
}
},
},
],
});
Подробнее здесь: https://stackoverflow.com/questions/798 ... js-website
Свободная форма Wordpress не работает на веб-сайте Barba.js ⇐ Html
Программисты Html
-
Anonymous
1767127506
Anonymous
В моем проекте Wordpress для переходов используется Barba.js. Я использую Fluent Forms, и когда пользователь заходит на сайт через страницу с формой, все работает нормально. Однако если вы уйдете, а затем вернетесь или перейдете на страницу формы с другой, этого не произойдет.
При первой загрузке страницы формы Wordpress внедряет логику Fluent Form, и она работает. Об этом свидетельствует, среди прочего, скрипт, который отображается в конце тела только тогда, когда точкой входа является страница формы:
...
Общая структура веб-сайта в формате HTML:
...
...
При переходе на страницу формы логика поставляется с HTML, но Барба заменяет только то, что находится внутри контейнера. Каков правильный подход к повторной инициализации такого кода? Моя проблема конкретно связана с Fluent Form, но как лучше всего запускать внешний код с помощью Barba?
Мой текущий обходной путь — принудительно использовать навигацию вместо перехода при переходе на страницу формы.
Это полная настройка Barba:
barba.init({
// Logic to force navigation to the fluent form page
prevent: ({ event, href }) => {
const hrefPath = (() => {
try {
return new URL(href, window.location.origin).pathname;
} catch (e) {
return href;
}
})();
if (hrefPath === "/contact-us/" || hrefPath === "/contact-us") {
return true;
}
if (event.type === "click" && href === window.location.href) {
event.preventDefault();
event.stopPropagation();
if (window.scrollY !== 0) {
gsap.to(window, { scrollTo: 0, duration: 0.5 });
}
return true;
}
},
transitions: [
{
name: "default",
leave(data) {
try {
const tl = gsap.timeline();
// animating the page out
return tl; // returning the "thenable" timeline
} catch (e) {
console.log("BARBA LEAVE ERROR", e);
}
},
enter(data) {
try {
// clean up gsap scrolltriggers
// update page title
} catch (e) {
console.error("BARBA LEAVE ERROR", e);
}
},
after(data) {
try {
// initialize page-specific logic
initializePage();
const tl = gsap.timeline();
// animate new page in
return tl;
} catch (e) {
console.error("BARBA AFTER ERROR", e);
}
},
},
],
});
Подробнее здесь: [url]https://stackoverflow.com/questions/79848500/wordpress-fluent-form-not-working-in-a-barba-js-website[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия