代码之家  ›  专栏  ›  技术社区  ›  Simon_Weaver

对stackoverflow样式的“问题”/“标签”滚动按钮进行编码的最佳方法

  •  3
  • Simon_Weaver  · 技术社区  · 16 年前

    对于顶部的“问题”、“标签”、“用户”,实现Stackoverflow等滚动“按钮”的最佳方法是什么。

    <div class="nav">            
    <ul class="primarynav">
          <li class="">
               <a href="/questions">Questions</a>
          </li>
          <li class="">
               <a href="/tags">Tags</a>
          </li>
          <li class="">
               <a href="/users">Users</a>
          </li>
          <li class="">
              <a href="/badges">Badges</a>
          </li>
          <li class="">
              <a href="/unanswered">Unanswered</a>
          </li>
     </ul> 
    

    我有点放弃了为它寻找javascript,因为所有javsascript似乎都在一行上。

    我只是想知道人们认为实现这种简单按钮的最简单/最可靠的方法是什么。

    我发现stackoverflow使用 <li> <span> . 好奇为什么。。。

    另外,我正在使用ASP.NET——目前没有像JQuery这样的库,但如果有帮助的话,我愿意尝试类似的方法。

    5 回复  |  直到 16 年前
        1
  •  15
  •   Eran Galperin    16 年前

    链接上的悬停效果不需要javascript。只需使用:悬停 pseudo-class :

    a:hover {
        background-color:#FF9900; 
    }
    

    navigation using unordered lists .

        2
  •  3
  •   Ry Biesemeyer    16 年前

    使用 元素是有意义的,因为它们是(链接的)列表,给出了链接的语义。当对事物进行语义标记时,非视觉浏览器(如搜索引擎)和使用屏幕阅读器的视觉不可见的人可以理解文档。

        3
  •  3
  •   Kent Fredric    16 年前

    分解它,它的css驱动:

    .primarynav li {
        margin-right:7px;
    }
    .primarynav li:hover {
       background-color:#FF9900;
    }
    

    萤火虫是我的朋友。

    然而,没有理由这么做 不能 可以使用javascript完成

    jQuery(function($){ 
          $("ul#nav li").each(function(i,v){ 
               $(v).hover(function(){ 
                  $(v).addClass("hovered"); 
               },function(){ 
                  $(v).removeClass("hovered");
               }); 
          });
    });
    
        4
  •  1
  •   EndangeredMassa    16 年前

    仅CSS:

    a.tagLink {
        background-color: red;
    }
    
    a.tagLink:hover {
        background-color: blue;
    }
    
        5
  •  1
  •   Rob    16 年前

    您不需要为此使用JavaScript;一些简单的CSS就足够了:

    a:hover {
        background-color: /* something magical */;
    }
    

    请注意“ :hover “选择器的一部分;这是一个神奇的位,它在非- <a>