Javascript 功能不工作,与输入连接
我什么都试过了。我不知道该怎么办。它不起作用Javascript 功能不工作,与输入连接,javascript,Javascript,我什么都试过了。我不知道该怎么办。它不起作用 function load() { if(acc == "a") var d = document.getElementById('sn'); d.style.display='block'; var b = document.getElementById('neas'); b.style.display='none'; if(acc == "n") var d = document.getElementById('sn');
function load() {
if(acc == "a")
var d = document.getElementById('sn');
d.style.display='block';
var b = document.getElementById('neas');
b.style.display='none';
if(acc == "n")
var d = document.getElementById('sn');
d.style.display='none';
var b = document.getElementById('neas');
b.style.display='block'; }
我的头:
<script language="JavaScript">
day = new Date();
hour = day.getHours();
if (hour>=3 && hour<2)
acc = "a";
else { acc = "n"; }
</script>
<script language="JavaScript">
function load() {
var d = document.getElementById('sn');
var b = document.getElementById('neas');
if(acc == "a") {
d.style.display='block';
b.style.display='none';
} else if(acc == "n") {
d.style.display='none';
b.style.display='block';
}
}
</script>
日期=新日期();
小时=天。getHours();
如果(小时>=3&&hour更换if(acc=“a”)
带if(acc==“a”)
=是赋值运算符
其中as==
是比较运算符
function load() {
var d = document.getElementById('sn');
var b = document.getElementById('neas');
if (acc = "a") {
d.style.display = 'block';
b.style.display = 'none';
}
if (acc = "n") {
d.style.display = 'none';
b.style.display = 'block';
}
}
通过缩进可以看到第一个问题:缺少一些块分隔符
function load() {
var d = document.getElementById('sn');
var b = document.getElementById('neas');
if (acc == "a") {
d.style.display='block';
b.style.display='none';
} else if (acc == "n") {
d.style.display='none';
b.style.display='block';
}
}
正如PSR所看到的,您还使用了=而不是==
我还更改了您的代码以重用元素声明(尽量保持干燥)和,如果让JS引擎避免了无用的测试。您有一些语法错误。您似乎缺少一些花括号,比较运算符也应该是=
而不是=
。请尝试:
function load() {
if (acc == "a") {
var d = document.getElementById('sn');
d.style.display = 'block';
var b = document.getElementById('neas');
b.style.display = 'none';
}
if (acc == "n") {
var d = document.getElementById('sn');
d.style.display = 'none';
var b = document.getElementById('neas');
b.style.display = 'block';
}
}
编辑:
此外,您的逻辑中似乎存在差距。acc的值从何处获得?此外,您可以将对象d
和b
设置一次,然后在if语句中更改其显示属性,如下所示:
function load() {
var d = document.getElementById('sn');
var b = document.getElementById('neas');
if (acc = "a") {
d.style.display = 'block';
b.style.display = 'none';
}
if (acc = "n") {
d.style.display = 'none';
b.style.display = 'block';
}
}
确保在{}
中包含
子句。在比较时,请使用=
而不是=
,=
是赋值运算符,因此不会传递if
子句
function load() {
var d = document.getElementById('sn');
var b = document.getElementById('neas');
if(acc == "a"){
d.style.display='block';
b.style.display='none';
}
else if(acc == "n"){
d.style.display='none';
b.style.display='block';
}
};
它应该做什么?如果你能提供额外的标记,这样我们就可以看到你在做什么。不工作意味着什么?acc来自何处?@user2451963请解释清楚。acc=“a”
dystroy:)aaahaa编辑:):)
function load() {
var d = document.getElementById('sn');
var b = document.getElementById('neas');
if(acc == "a"){
d.style.display='block';
b.style.display='none';
}
else if(acc == "n"){
d.style.display='none';
b.style.display='block';
}
};