论坛首页 Web前端技术论坛

CSS精髓2:JS的回归

浏览 1144 次
该帖已经被评为隐藏帖
作者 正文
   发表时间:2008-09-03  

 

     来源: OurJS.cn   原文:http://www.ourjs.cn/show.php?id=449

 

   20043月,Dave Shea写了一篇经典文章《CSS Sprites》,现在他使用JavaScript同样能创造出完美的视角效果。

(要了解更多Dave Shea,可以点击这里)

 

 

JAVASCRIPT:

$(document).ready(function(){

    // remove link background images since we're re-doing the hover interaction below

    // (doing it this way retains the CSS default hover states for non-javascript-enabled browsers)

    // we also want to only remove the image on non-selected nav items, so this is a bit more complicated

    $(".nav").children("li").each(function() {

       var current = "nav current-" + ($(this).attr("class"));

       var parentClass = $(".nav").attr("class");

       if (parentClass != current) {

          $(this).children("a").css({backgroundImage:"none"});

       }

    });    

    // create events for each nav item

    attachNavEvents(".nav", "home");

    attachNavEvents(".nav", "about");

    attachNavEvents(".nav", "services");

    attachNavEvents(".nav", "contact");

    function attachNavEvents(parent, myClass) {

       $(parent + " ." + myClass).mouseover(function() {

          $(this).append('<div class="nav-' + myClass + '"></div>');

          $("div.nav-" + myClass).css({display:"none"}).fadeIn(200);

       }).mouseout(function() {

          $("div.nav-" + myClass).fadeOut(200, function() {

              $(this).remove();

          });

       }).mousedown(function() {

          $("div.nav-" + myClass).attr("class", "nav-" + myClass + "-click");

       }).mouseup(function() {

          $("div.nav-" + myClass + "-click").attr("class", "nav-" + myClass);

       });

    }

});

 

来源: OurJS.cn   原文:http://www.ourjs.cn/show.php?id=449

 

 

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics