Я использую плагин 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 уже загружен?
Если вы создаете разделы или слайды на лету, то вам нужно будет снова уничтожить и инициализировать 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();
}
Привет попробуйте использовать функцию:
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');
}
});
});
}