JavaScript — перезагрузите страницу AJAX, прежде чем получать контент

Я использую плагин FullPage.js, я пытаюсь сделать переход между страницами с помощью AJAX.

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

Вот мой код:

$('.click a').click(function(event) {
event.preventDefault();

$.ajax(this.href, {

cache: false,
success: function(data) {
$('#fullpage').html($(data).find('#fullpage > *'));

location.search = "reloaded=1";
console.log('The page has been successfully loaded');
},
error: function() {
console.log('An error occurred');
}
});
});

Как я могу обновить плагин, или я могу загрузить страницу, прежде чем я получу ее содержимое с AJAX?

Может быть, я могу загрузить страницу с AJAX уже загружен?

2

Решение

Если вы создаете разделы или слайды на лету, то вам нужно будет снова уничтожить и инициализировать fullPage.js.
Для этого вам нужно будет использовать destroy('all') функция fullPage.js, а затем инициализировать его снова.

Что-то вроде:

//initializing fullpage.js for the 1st time.
initFullpage();

function myFunction() {
$('.click a').click(function (event) {
event.preventDefault();

$.ajax(this.href, {

cache: false,
success: function (data) {
$('#fullpage').html($(data).find('#fullpage > *'));

location.search = "reloaded=1";
console.log('The page has been successfully loaded');

//destroying fullpage.js completely
$.fn.fullpage.destroy('all');

//initializing it again so it can detect new sections.
initFullpage();
},
error: function () {
console.log('An error occurred');
}
});
});
}

function initFullpage(){
$('#fullpage').fullpage();
}
2

Другие решения

Привет попробуйте использовать функцию:

function myFunction(){
$('.click a').click(function(event) {
event.preventDefault();

$.ajax(this.href, {

cache: false,
success: function(data) {
$('#fullpage').html($(data).find('#fullpage > *'));

location.search = "reloaded=1";
console.log('The page has been successfully loaded');
myFunction(); // FOR refresh
},
error: function() {
console.log('An error occurred');
}
});
});
}
0

По вопросам рекламы [email protected]