发表于: 2019-12-29 22:26:20

1 1076


今日完成

方法二:
//方法二:做个判断,遍历杀手图标,有显示的就跳转,没有显示请杀人
document.getElementsByClassName("footer-p")[0].onclick=function(){
for(i=0;i<cc4.length;i++){
if(document.getElementsByClassName("main-ioc")[i].visibility == "visible"){
window.location.href = "../js2-5/js2-5.html";
}
else{
window.alert("请选人");
}
}
}
遇到问题:
显示:
描述:请选人一共出现8次,且杀了人也跳转不了,且按照js从上往下没有预编译,我点击第一个应该是跳转没有后面什么事情了,结果还是出现了7次请选人之后才跳转
可能的原因:alert同步了,所以出现7次
方法二更改,设置一个变量,遍历数组,出现显示页面,就设置一个值,再根据这个值做判断是否跳转
//方法二(改):做个判断,遍历杀手图标,有显示的就跳转,没有显示请杀人
var ww=0;
document.getElementsByClassName("footer-p")[0].onclick=function(){
//var ww=0;//也可以写在这里
for(i=0;i<cc4.length;i++){
if(document.getElementsByClassName("main-ioc")[i].style.visibility == "visible")
{
ww=1;//只要有一个杀手图标是显示的,ww的值就变为0(点击杀人);
}
}
console.log(ww);//正确的位置,根据点击结果,实时改变
//做出判断,是跳转还是提示杀人
if(ww==0){//一个"="是赋值的意思,所以是两个"="
window.alert("请选人");
}
else{
// window.location.href = "../js2-5/js2-5.html";
}
}
// console.log(ww);//错误位置.只显示初始ww的值
代码显示正确
显示:
ps:错误代码如下
错误1
//方法二(改):做个判断,遍历杀手图标,有显示的就跳转,没有显示请杀人
document.getElementsByClassName("footer-p")[0].onclick=function(){
var ww=flase;
for(i=0;i<cc4.length;i++){
if(document.getElementsByClassName("main-ioc")[i].style.visibility == "visible")
{
ww=ture;//只要有一个杀手图标是显示的,ww的值就变为0;
}
}
console.log(ww);
if(ww==flase){
window.alert("请选人");
}
else{
window.location.href = "../js2-5/js2-5.html";
}
}
显示:
未杀人点击
杀人点击:
都显示未定义
不能用布尔值,原因不晓得
错误2:
var ww=0;
document.getElementsByClassName("footer-p")[0].onclick=function(){
for(i=0;i<cc4.length;i++){
if(document.getElementsByClassName("main-ioc")[i].style.visibility == "visible")
{
ww=1;//只要有一个杀手图标是显示的,ww的值就变为0(点击杀人);
}
}
// console.log(ww);
//做出判断,是跳转还是提示杀人
if(ww==0){//一个"="是赋值的意思,所以是两个"="
window.alert("请选人");
}
else{
// window.location.href = "../js2-5/js2-5.html";
}
}
console.log(ww);
显示:
描述:如上代码描述,页面一刷新就显示ww=0,想着点击后就该是"1",结果还是"0",
就在想哪里不对(以为代码错误,其实没有错误),仅仅是把console.log()的位置设置错了,
因为开始就编译了console.log(),点击后就算"ww"的值改了,也不能改变已经读取到的显示结果,
应该设置在代码里面,点击一次代码开始运行,显示初始值(未杀人)是"0",杀人后再点击,又重新运行显示

值为"1"(重新运行新的值),所以仅仅是console.log()的位置写错,然后根据点击后"ww"的值,判定运行那种代码




返回列表 返回列表
评论

    分享到