如何只显示一次javascript警报

时间:2017-03-05 23:46:29

标签: javascript jquery

请参阅,这是我的警报代码:

function Alerta() {
	 var person = prompt("¡Recuerda!:Todos Los Titulos Abren El Menu!\nCual es tu nombre?", "Goku");
    
    if (person != null) {
        document.getElementById("intro").innerHTML =
        "" + person + "";
		}
}
<html>
<head>
</head>
<body onLoad="Alerta()" id="Inicio">
</body>

问题是,每当我进入页面,刷新页面......或闪烁时,它都会显示出来......所以...我希望它能够这样做:当你写一个名字然后点击“接受”它就会保存名称和警报永远不会再次显示,当您单击“取消”时,它将在您每次进入页面时显示。请帮忙?

2 个答案:

答案 0 :(得分:2)

您可以使用localStorage在会话之间保存人名,然后仅在localStorage中未设置人员值时提示。如果您需要向后兼容性,则可以使用Cookie代替localStorage

function Alerta() {
  // get the value from localStorage
  var person = localStorage.person
  if (!person) {
    // person has not been set so ask the user
    person = prompt("¡Recuerda!:Todos Los Titulos Abren El Menu!\nCual es tu nombre?", "Goku");
    // set the person value in localStorage for next time
    localStorage.person = person
  }
  // set the value of your intro
  document.getElementById("intro").innerHTML = person;
}

答案 1 :(得分:0)

当他们输入名称时,将其保存为跨页面(如cookie或本地存储)的内容,如果已经设置,则在页面加载时禁止显示。