Показать сообщение отдельно
  #4 (permalink)  
Старый 30.05.2016, 10:49
Профессор
Отправить личное сообщение для Batyabest Посмотреть профиль Найти все сообщения от Batyabest
 
Регистрация: 14.09.2013
Сообщений: 252

Сообщение от 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);
		});
	});
	})
});


Они идентичны, за исключением класса ссылки.
Обратный же переход по ссылкам из бокового меню работает как надо.

Скажите, где что неправильно написано?
Ответить с цитированием