PageUp
@PageUp
Default

Как в JS или AJAX определить переход с одной страницы на другую?

<script>

					$(document).on("click", "a", function(evt) {
						evt.preventDefault();
						var redirect_url = this.href;
						$.ajax({
							url: "index.php",
							async: false,
							context: $("#content"),
							success: function() {
								$("#content").load(redirect_url + " #content");
							}
						});
						return false; //что бы не выполнять переход дефолтный

					});
				
			</script>


Эта функция подгружает контент в DIV элемент и всегда выполняется в одном конкретном файле Index.php
Но если я пытаюсь перейти к другому файлу, в другой вообще папке, то вместо контента возвращается пустая страница.
Как сделать так, что бы функция понимала "внешние" ссылки уводящие с текущей и отключалась, что бы срабатывал простой переход по ссылке в такие моменты?
  • Вопрос задан
  • 182 просмотра
Решения вопроса 1
PageUp
@PageUp Автор вопроса
Default
Очень долго провозился над своей функцией. Почти сутки ушли на то, что бы придумать решение.
Так как ответа тут так и не дождался, делюсь результатом, вдруг потомкам пригодится.

<script>
				$(document).on("click", "a", function(evt) {
					evt.preventDefault();
					var redirect_url = this.href;
					if (redirect_url.indexOf("index.php") > -1) {
						$.ajax({
							url: "index.php",
							async: false,
							context: $("#content"),
							success: function() {
								$("#content").load(redirect_url + " #content");
							}
						});
						return false; //что бы не выполнять переход дефолтный
					} else {
						window.location.replace(redirect_url);
					}
				});
			</script>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
zkrvndm
@zkrvndm
Архитектор решений
Используй условный оператор if и свойство window.location.href для обозначения условия при котором должен сработать код.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
21 нояб. 2024, в 19:31
500 руб./за проект
21 нояб. 2024, в 19:28
200000 руб./за проект