Сообщение от Alex_63
|
Batyabest,
(function() {
$('a.menuside').on('click', function(m) {
m.preventDefault();
var action = $(this).data('action');
var murl = $(this).data('murl');
var mid = $(this).data('mid');
var mtpl = $(this).data('mtpl');
$.post(document.location.href, {action:action,mid:mid,mtpl:mtpl}, function(data) {
$('#wrapcontent').fadeOut(300, function() {
history.pushState(null, null, murl);
$(this).html(data).fadeIn(800);
});
});
})
})();
|
Не работает. Пытался даже разными скриптами осуществлять работу.
1. Ссылка с меню в боковом меню - переход работает как положено, через ajax. Здесь работает этот скрипт:
$(document).ready(function() {
$('a.menuside').click(function(m) {
m.preventDefault();
var action = $(this).data('action');
var murl = $(this).data('murl');
var mid = $(this).data('mid');
var mtpl = $(this).data('mtpl');
$.post(document.location.href, {action:action,mid:mid,mtpl:mtpl}, function(data) {
$('#wrapcontent').fadeOut(300, function() {
history.pushState(null, null, murl);
$(this).html(data).fadeIn(800);
});
});
})
});
После перехода в контентной части сайта появляются нужные нам блоки, со ссылками, а адрес в строке браузера подменяется путем
history.pushState(null, null, murl);
И тут уже при переходе по ссылке из контентной части сайта (не из бокового меню), переход по ajax не работает, происходит обычный переход по ссылке, с перезагрузкой страницы.
Здесь работать должен этот скрипт:
$(document).ready(function() {
$('a.playlist').click(function(m) {
m.preventDefault();
var action = $(this).data('action');
var murl = $(this).data('murl');
var mid = $(this).data('mid');
$.post(document.location.href, {action:action,mid:mid}, function(data) {
$('#wrapcontent').fadeOut(300, function() {
history.pushState(null, null, murl);
$(this).html(data).fadeIn(800);
});
});
})
});
Они идентичны, за исключением класса ссылки.
Обратный же переход по ссылкам из бокового меню работает как надо.
Скажите, где что неправильно написано?