使用javascript

时间:2016-04-19 09:35:52

标签: javascript html css

嗨我看了stackoverflow来纠正我的错误,但找不到任何有帮助的答案,所以我希望我的标签显示无,当我点击标签,我想在ul元素上显示块,ul元素得到& #39;是显示块,但标签不在我的代码中:



var menuCheck = document.getElementById(checkBox);
var menuDims = document.getElementById(menuUl);
var labelUl = document.getElementById(labelUl);
        
function menuFunction() {
          
  menuDims.style.display="block";
  labelUl.style.display="none";
          
}

<nav class="menu">
  <checkbox id="checkBox"></checkbox> 
  <label for="checkbox" onclick="menuFunction()" id="labelUl">l</label>
  <ul id="menuUl">
    <li><a href="index.html">Forside</a></li>
    <li><a href="spil.html">Spil</a></li>
    <li><a href="an.html">Anmeldelser</a></li>
    <li><a href="#">Kontakt</a></li>
  </ul>
</nav>
&#13;
&#13;
&#13;

5 个答案:

答案 0 :(得分:2)

修复:

var menuCheck = document.getElementById('checkBox');
var menuDims = document.getElementById('menuUl');
var labelUl = document.getElementById('labelUl');

答案 1 :(得分:1)

可能的问题之一是,你需要

document.getElementById("checkBox")

即。你需要加上或引用id名称。

答案 2 :(得分:0)

由于未执行menuCheck和其他变量,因为语句未执行

function menuFunction() {
  var menuCheck = document.getElementById(checkBox);
  var menuDims = document.getElementById(menuUl);
  var labelUl = document.getElementById(label);
  menuDims.style.display="block";
  labelUl.style.display="none";
}

答案 3 :(得分:0)

getElementById MDN page

var labelUl = document.getElementById(label);

是问题所在

ID与元素

不匹配
<label for="checkbox" onclick="menuFunction()" id="**labelUl**">l</label>

该行应该如下所示

var labelUl = document.getElementById("labelUl");
var menuDims = document.getElementById("menuUl");

所有其他ID除了复选框一个是正确的,但需要传递的ID作为字符串传递

var menuCheck = document.getElementById(checkBox);

并不完全确定这是做什么但它与代码段中显示的任何元素都不匹配

答案 4 :(得分:0)

document.getElementById将字符串作为参数,有关详细信息和示例,请参阅this page
并且在将元素添加到文档后需要运行脚本标记 因此,在<nav>之后放置脚本标记也应该有帮助。

working example