Закрыть всплывающее окно после входа в систему при достижении указанного URL с помощью Javascript

#javascript

#javascript

Вопрос:

Итак, у меня есть кнопка в моем HTML-коде, которая открывает всплывающее окно для входа в SharePoint. После этого мне приходится закрывать окна вручную, потому что я не использую интерфейс SharePoint. Есть ли способ закрыть всплывающее окно после достижения определенного URL-адреса, например, «панель управления» sharepoint или домашняя страница.

Это мой код:

 function newPopup(url) {
    popupWindow = window.open(url, 'popup','height='   600   ',width='   600   ',resizable=yes,scrollbars=yes,toolbar=yes,menubar=yes,location=yes')
}

  

Комментарии:

1. Вы можете проверить URL-адрес в этом окне. Расположение. href , напишите условие if, чтобы проверить URL-адрес и скрыть всплывающее окно для этого URL

2. вы можете вызвать closePopup с помощью PopupWindow.close(); функция при достижении этого конкретного URL (проверьте предыдущий URL с текущим URL)

3. Итак, я просто добавляю оператор if к той же функции?

4. вызовите другую функцию, которая будет иметь триггер закрытия всплывающего окна после успешной проверки URL-адреса @neolith

5. Просто предостережение, использование функции window.open в настоящее время блокируется многими браузерами. Он был использован совсем немного. Если он используется только локально, это не должно быть проблемой, но что-то нужно иметь в виду.

Ответ №1:

Сначала получите URL-адрес страницы, которую вы хотите скрыть всплывающее окно

Используйте это для этого : console.log(window.location.href)

А затем напишите условие if с полученным адресом :

Пример:

var popup = document.getElementById(«xxx») -> Указать идентификатор всплывающего окна

 if(window.location.href == "/yourspage"){
  popup .style.display = "none";
}
  

Комментарии:

1. Это не работает. Что мне использовать для popupname? Я попробовал «PopupWindow», «window» и «popup»

2. Команда закрытия работает, когда я выполняю ее вне оператора if, поэтому оператор if должен быть неправильным.

3. возьмите идентификатор всплывающего окна, используя getElementById, и сохраните его в переменной, а вместо popupname введите имя переменной, я обновил свой ответ