<html>
<head>
<title>逻辑运算符</title>
<script language="javascript">
window.onload = function warning(){
fu = document.getElementById("ful");
flink = document.getElementById("fa");
con1 = flink.parentNode.tagName;
con2 = fu.childNodes[0].className;
if(con1 == "DIV" && con2 == "FLI"){
alert("对,就是这个味!");
}
}
</script>
</head>
<body>
<ul id="ful"><li class="fli">北京</li><li>上海</li><li>香港</li></ul>
<div><a href="#" id="fa">花椒</a><span>大茴</span></div>
</body>
</html>逻辑关系错在哪里,怎么没有输出"对,就是这个味!"

解决方案 »

  1.   

    应该是 大小写问题if(con1 == "DIV" && con2 == "FLI"){
        alert("对,就是这个味!");
        }else{
        alert([con1, con2]);
    }你看看弹出是什么
      

  2.   

    if(con1 == "DIV" && con2 == "FLI") 判断为FALSE.
    alert就不执行了
      

  3.   

    条件不满足就不会进入if分支。 你可以先alert(con1 );  alert(con2); 看与条件符合没。。不符合当然就不会弹出啦。
      

  4.   

    if(con1 == "div" && con2 == "fli"){大小写的问题哦  要改为小写
      

  5.   

     if(con1 == "DIV" && con2 == "fli")
    这样子才行的.你可以使用alert(con1); alert(con2);就知道了.因为html标签元素将自动转换成大写,而那个样式,浏览器将不会自动转换.所以还是小写.