3
回答
UL块在chrome下无法显示,IE11却可以
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   
<html>
  <head>
    <title></title>
    <script type="text/javascript">
   window.onload=function(){ 
	 var toggle = document.querySelector("#toggle");
	 var cards = toggle.querySelector("#cards");

	 function CardsClick(e) {
		 alert(e.type);
		 cards.style.display = "block";
	 }
	 toggle.addEventListener("click", CardsClick, false);
};

    </script>
  </head>
  <body>
  <ul>
    <li>A</li>
    <li>B</li>
    <li>C</li>
    <li id="toggle"><a href="">D</a>
      <ul style="display:none" id ="cards">
        <li>E</li>
        <li>F</li>
        <li>G</li>
        <li>H</li>
      </ul>
    </li>
  </ul>
  </body>
</html>

这段代码IE11下能得到我想要的结果


但在chrome下却点击,一闪而过


不知道为什么。。。





举报
陈小轩
发帖于3年前 3回/403阅
共有3个答案 最后回答: 3年前

  1. 很简单的问题,href不要为空,如果你是要给一个a标签加js事件,那么就写href="javascript:;"。
  2. 如果你经常写页面的话你会发现有些人喜欢写href="#",但是这样子的话当点击链接后总是会跳转到页顶位置。
  3. 总之当你想给a标签添加事件就写成href="javascript:;"

至于你说的 IE可以而chrome不可以,那么呵呵,IE的兼容性最差,慢慢琢磨吧

--- 共有 5 条评论 ---
陈小轩回复 @CrazyHarry : 多谢 3年前 回复
buglife回复 @陈小轩 : 这样写的话如果页面长的话,你也会遇到问题就是每点击完则会回到页面顶部,个人建议你还是写成href="javascript:;"比较通用,当然如果你是在学习也就无所谓了 3年前 回复
陈小轩回复 @CrazyHarry : 谢了,改成了href=“#”,上面忘了该代码了 3年前 回复
buglife回复 @陈小轩 : <a href="javascript:;">D</a> 你确定是这么写的吗? 3年前 回复
陈小轩谢谢回复 按你说的,情况还是一样。 还有IE11对标准兼容性很好了 3年前 回复

在chrome中,点在<A>会一闪而过, 而点在li上正确显示

应该很简单的,可是我不了解。请各位告诉我

没看到你单击的时候网页刷新了么。。。。。。。。。。。。。。。
--- 共有 1 条评论 ---
陈小轩我菜菜~以为不写HREF里的属性,就局部跳转了。。。。额。。2了 3年前 回复
顶部