码迷,mamicode.com
首页 > Web开发 > 详细

jquery学习基础

时间:2015-06-29 10:16:58      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:jquery   基础   学习   

这篇博客将会给大家带来jquery中的一些基础操作。

使用click绑定事件

使用click为div绑定点击事件

<div>
   testclick
</div>

$(function($) {
    $("div").click(
      function() {
        alert("hello world");
    }
  );
});

技术分享

点击增加样式

点击div时候,改变其字体颜色和背景色

<div>
    click to change the backgroundcolor
</div>

$(function($) {
    $("div").click(
        function(){
            $(this).css({ color: "#ff0011", background: "blue" });
        }
    );
});

技术分享

隐藏和显示

使用show()和hide()

先看下效果:
技术分享
代码如下:

body{
    margin:0 auto;
    width:500px;
    height:100%;
}
a{
    text-decoration:none;
    hover:#ff0000;
}

a:hover{
    color:#ff0000;
}

div{
    height:200px;
    width:200px;
    background:rgb(200,100,150);
    display:none;
}

<a href="#" id="show">显示</a>
<a href="#" id="hidden">隐藏</a>
<div>

</div>

可以看到首先将div隐藏了。
jquery代码如下:

$(function($) {
        $("#show").click(
            function() {
                $("div").show("slow");
            }
        );
        $("#hidden").click(
            function() {
                $("div").hide("fast",
                    function() {
                        alert("隐藏完成");
                    }
                );
            }
        );
    });

这里当点击隐藏的时候,在隐藏完成的时候会触发一个匿名函数,会弹出一个alert。

使用toggle()

效果:
技术分享
代码和上面是一样的,看下js代码:

$(function($) {
        $("#toggle").click(
            function() {
                $("div").toggle("slow");
            }
        );
 });

这里为id=”toggle”的元素绑定了一个click方法,使用了jquery提供的toggle方法,隐藏和显示div元素。

滑动显示隐藏

先看效果:
技术分享
jquery代码如下:

$(function($) {
        $(".down").click(
            function() {
                $("div").slideDown("slow","linear",function(){
                    alert("slide down ok");
                });
            }
        );
        $(".up").click(
            function() {
                $("div").slideUp();
            }
        );
    });

这里,slideDown和slideUp可以接受 三个参数:
1.speed:三种预定速度之一的字符串(“slow”,”normal”, or “fast”)或表示动画时长的毫秒数值(如:1000)
2.easing:(Optional) 用来指定切换效果,默认是”swing”,可用参数”linear”
3.fn在动画完成时执行的函数,每个元素执行一次。

fadeIn和fadeOut淡入淡出

先看效果:
技术分享
jquery代码如下:

$(function($) {
        $(".in").click(
            function() {
                $("div").fadeIn(3000,"linear",function(){
                    alert("slide down ok");
                });
            }
        );
        $(".out").click(
            function() {
                $("div").fadeOut();
            }
        );
    });

这里,在淡入的时候我指定了需要三秒时间,淡入完成以后触发匿名函数。

使用delay()延迟执行

可以使用delay函数,延迟执行动画,先看效果:
技术分享

$(".delay").click(
    function() {
        $("div").fadeIn(4000).delay(800).slideUp("slow");
    }
);

这里我首使用4秒时间,将div淡入,然后在800毫秒以后又将该div隐藏。

hover的用法

hover表示当鼠标移动到元素上的情况。先看效果:
技术分享

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<title>jquery lazyLoad</title>
<script type="text/javascript" src="../jquery/jquery-2.1.4.js"></script>
<script type="text/javascript">
    $(function($) {
        $("ul li").hover(
            function () {
                $(this).addClass("hover");
            },
            function () {
                $(this).removeClass("hover");
            }
        );
    });
</script>
<style type="text/css">
body{
    margin:0 auto;
    width:500px;
    height:100%;
}

ul{
    list-style-type:none;
}
li{
    float:left;
    width:60px;
    background:#fff000;
    text-align:center;
    margin:3px;
}

.hover{
    border:2px solid blue;
}


</style>
</head>
<body>
    <ul>
        <li>aaa</li>
        <li>bbb</li>
        <li>ccc</li>
        <li>ddd</li>
    </ul>
</body>
</html>

可以看到当鼠标滑过的时候,为当前的li元素添加了一个class。这里就是为其添加了一个样式。

toggleClass学习

toggleClass:如果存在(不存在)就删除(添加)一个类。 看效果:
技术分享

table{
    border:none;
    width:70%;
    border-collapse:collapse;
}
td{
    border: solid #000 1px;
}
.clicked{
    background:#58a936;
}

这里我提前定义好了一个class=”clicked”的样式。

$(function($) {
    $("table tr").click(
        function() {
            $(this).toggleClass("clicked");
        }
    );
 });

为table下的所有tr元素绑定click事件,并且在该事件中添加或删除该元素的class。

mouseover和mouseout

mouseover和mouseout分别定义鼠标移动到元素上和鼠标移出时的事件。看效果:
技术分享
关键代码:

$(function($) {
        $("table tr").mouseover(
            function(){
                $(this).css({background:"#ff0892"});
            }
        );
        $("table tr").mouseout(
            function(){
                $(this).css({background:"#ffffff"});
            }
        );
  });

这里我动态的为选中的元素设置背景色,也可以提前定义好一个样式然后通过addClass和removeClass来实现。

each和find的用法

each:以每一个匹配的元素作为上下文来执行一个函数
find:搜索所有与指定表达式匹配的元素

$(function($) {
    $("ul").find("li").each(function(i){
        $(this).html($(this).html()+"---"+i);
    });
  });

<ul>
    <li>aaa</li>
    <li>bbb</li>
    <li>ccc</li>
    <li>ddd</li>
    <li>eee</li>
</ul>

效果如下:
技术分享

源码下载

css上下左右垂直居中

最后给大家带来一个上下左右垂直居中的demo:
效果如下:
技术分享
css代码如下:

body{
    margin:0px;
    padding:0px;
    width:100%;
    height:100%;
}
div{
    position:absolute;
    top:50%;
    left:50%;
    width:600px;
    height:150px;
    margin-top:-75px;/*注意这里必须是DIV高度的一半*/
    margin-left:-300px;/*这里是DIV宽度的一半*/
    background:#f78644;
    border:2px solid rgb(123,200,89);
}

这样的居中方式,非常适合做登陆界面。大家需要的可以收藏了哈。

ok,今天关于jquery的学习就到这里了。该休息了。

jquery学习基础

标签:jquery   基础   学习   

原文地址:http://blog.csdn.net/mockingbirds/article/details/46673447

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!