Ich verwende swup.js für den Seitenübergang und das Ändern von Inhalten über AJAX. Leider scheint Gravity Forms die AJAX-Anfrage nicht gut zu handhaben und mein Formular funktioniert nach dem Übergang nicht.
Ich verwende Folgendes, um meine Skripte beim Laden der Seite neu zu initialisieren:
document.addEventListener('swup:pageView', (event) => {
// code
})
Gibt es eine Funktion, die ich in Javascript neu initialisieren könnte, damit Gravity-Formulare bei jedem Seitenwechsel neu initialisiert werden? Konnte nichts in der Dokumentation finden.
Ich weiß, das Datum des Beitrags ist weit entfernt, aber diese Frage ist mir gerade aufgetaucht, und falls Sie die Antwort nicht finden konnten,
Versuchen Sie, diesen Code zu verwenden, dieser wird alle Änderungen beobachten, die für das DOM des Körpers gelten, und wird auslösen, was Sie wollen:
<script>
$(document).on('DOMSubtreeModified', 'body', function (el) {
console.log('body content changed');
// append you init code here
});
</script>
Sag mir, ob das funktioniert oder nicht.
Am Ende habe ich SwupFormsPlugin und Contact Form 7 mit folgendem verwendet
document.addEventListener('DOMContentLoaded', function (event) {
var domain = window.location.origin // HACK: makes link selector relative
var isMobile = window.innerWidth < 800
if (isMobile) {
} else {
var swup = new Swup({
plugins: [
new SwupOverlayTheme({
color: '#eff6fb',
duration: 3000,
direction: 'to-bottom',
}),
new SwupBodyClassPlugin(),
new SwupFormsPlugin({ formSelector: 'form.wpcf7-form' }),
new SwupScrollPlugin({
doScrollingRightAway: false,
animateScroll: true,
scrollFriction: 0.3,
scrollAcceleration: 0.04,
}),
],
FORM_SELECTOR: 'form.wpcf7-form',
LINK_SELECTOR: 'a[href*="'.concat(
domain,
'"]:not([data-no-swup]), a[href^="/"]:not([data-no-swup]), a[href^="#"]:not([data-no-swup]), a[xlink\\:href]'
),
})
swup()
}
})
function domReady (callback) {
document.readyState === 'interactive' || document.readyState === 'complete'
? callback()
: document.addEventListener('DOMContentLoaded', callback)
}
export { domReady }
Zuhause hilft es jedem
13356000cookie-checkWordPress + Gravity Forms Ajax + Swup JSyes