我需要提示只显示一次,保存用户名,并在网站的其余部分使用它
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;
}
希望有用!
首先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;
}
希望有用!