现在的位置: 首页 > 综合 > 正文

JQuery两个非常有意思的切换方法-hover-toggle

2013年02月11日 ⁄ 综合 ⁄ 共 1673字 ⁄ 字号 评论关闭

hover:

hover是一个自定义方法,描述的是,状态一,状态二,鼠标滑动而触发。效果与onmousemove onmouseout类似。对于这种状态,用一个小例子来描述,其实,在复杂的动画富web应用中,hover的作用很广泛。在function(){},function(){}这两个回调函数中,足以让我们发挥丰富的扩展。

.hover(function(){..},function(){..});

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
    <style type="text/css">
        #de{}
    </style>
    <script type="text/javascript" src="jquery-1.6.4.min.js"></script>
    <script type="text/javascript">
        $(function () {
            var $de = $("#de");
            $de.hover(function () { $(this).css("background", "#ccc"); }, function () { $(this).css("background","#999"); });
        });
    </script>
</head>
<body>
    <a href="#" id="de">content</a>
</body>
</html>

toggle:

  话说,JQuery中toggle这是一个好玩意,用于绑定多个事件处理器函数,以响应被选元素的轮流click事件。如果元素是可见的,切换为隐藏。如果元素是隐藏的,切换为可见。

.toggle(function(){},function(){},....);.toggle(speed,function(){}); .toggle(speed,easing,function(){});

speed:显示与隐藏的速度,默认是0。

easing:指定切换效果,默认是swing,可选linear。

.toggle()方法还有一种以switch参数的形式,比如我设置一个参数为int,$("..").toggle(int)。它的类似效果,可以如下:

 int ? $("..").show() : $("..").hide();

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
    <style type="text/css">
        #de{}
        .de{ background:#ccc; width:50px; height:50px; margin-top:50px; display:none;}
    </style>
    <script type="text/javascript" src="jquery-1.6.4.min.js"></script>
    <script type="text/javascript">
        $(function () {
            var $de = $("#de");
            $de.toggle(function () { $(".de").fadeIn("slow"); }, function () { $(".de").fadeOut("slow"); });
        });
    </script>
</head>
<body>
    <a href="#" id="de">content</a>
    <div class="de"></div>
</body>
</html>

抱歉!评论已关闭.