我需要提示只显示一次,保存用户名,并在网站的其余部分使用它

I need a prompt to show just once, save a username, and use it in the rest of the site

首先post。 我真的是 Javascript 的新手,所以我可能会在这里问很多问题。 那么,问题是这样的: 用户进入站点,提示询问他们的姓名,然后 DOM 被编辑为显示 'h3' 说 "Welcome userX"。 但是,第一个问题是,由于 .js 文件被站点的每个文件共享,因此每次都会显示提示。 为了避免这种情况,我在加载正文时调用的函数中添加了代码。

var salute = function(){
    var user = prompt("Por favor ingrese su nombre", "Usuario");
        if( user==null){
        user = "Usuari@ sin nombre"
    };

    var saludo = document.getElementById("saludo");

    saludo.innerHTML= "Bienvenido " + user; 

}

但是,因为我有这个: <body onload="salute();"> 每当用户返回 "Home" 时,他们都会再次被要求输入其名称。 我该怎么做才能避免这种情况?还有,有没有办法在网站的另一部分使用 "user" 变量?例如,在图片库中,写成 "We hope you enjoy this pictures, user"

如果您想为下次访问和其他页面保留(本地存储)用户名,那么您可以使用它,并通过额外的验证来增强它:

var salute = function() {
  var user = localStorage.getItem("user");

  if (!user) {
    user = prompt("Por favor ingrese su nombre", "Usuario");
    if (user) {
      user = localStorage.setItem("user", user);
    } else {
      user = "Usuari@ sin nombre"; //Your default one
    }
  }

  var saludo = document.getElementById("saludo");
  saludo.innerHTML = "Bienvenido " + user;

}

希望有用!