Создать опцию всплывающего окна с JavaScript - PullRequest
0 голосов
/ 22 мая 2019

Я пытаюсь написать код, который создает всплывающее окно на целевой странице сайта. Мне нужно всплывающее окно с текстом и двумя кнопками с двумя разными параметрами. Один из них заставляет всплывающее окно исчезать и нормально продолжать работу на сайте, другой покидает страницу и перенаправляет в другое место. Учитывая, что сейчас я не очень разбираюсь в javascript, я в некотором роде заблудился из-за двух частей кода, которые по отдельности выполняют половину того, что мне нужно.

Я знаю, что каждая часть кода дает нужный мне результат, но я не знаю, как объединить их так, как они работают.

эта часть кода открывает всплывающее окно, позволяющее выбрать между пребыванием на странице или уходом

</script>
<a href="http://www.google.com">test this</a>
<script type="text/javascript">
window.addEventListener('beforeunload', function (e) {
  // Cancel the event
  e.preventDefault();
  // Chrome requires returnValue to be set
  e.returnValue = '';
});
</script>

этот мир кода является гротескным и не имеет особого смысла, но он открывает приятное всплывающее окно, я хочу, чтобы в нем были вышеупомянутые опции, а не текст, который он показывает прямо сейчас

<SCRIPT Language="JavaScript">
var q = "do you know how much is 2+2?";
var a = 4;
var c = "<h2>yyyyyeeeeeeeyyyyyyy</h2>";
var ic = "<h2>w*nker</h2>";
var response = prompt(q,"0");
if (response != a) 
{ alert("buuuuh"); }
else { alert("oh yes!!! oh yes!!!"); }
var o = (response == a) ? c : ic;
document.write("<BR/>");
document.write(o);
</SCRIPT>

Итак, мне нужно одно всплывающее окно, с двумя кнопками, покинуть страницу, остаться на странице ... и тогда я буду иметь дело с настройками и всем этим shananigans

1 Ответ

0 голосов
/ 22 мая 2019

Вы можете попробовать использовать событие confirm() в JS, логика, к которой вы стремитесь, в значительной степени такова:

var popup = confirm("Do you want to leave the page ?");

if (popup == true) {
  window.close(); //For an example, but you could change the URL of the website to another on, or do whatever you want here...
} else {
        return false; //or open another popup, etc, you choose what you need over the function...
  }

Тогда вам просто нужно будет позвонить после того, как вы сделали приглашение, или в кнопке, или что-то, что вы хотите, чтобы оно было

...