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

jquery简单案例

时间:2015-06-28 12:51:39      阅读:424      评论:0      收藏:0      [点我收藏+]

标签:jquery实现   效果   

昨天写了一篇关于jquery选择器的学习的记录,后边发现关于jquery的学习不能只依靠简单的文档,必须动手写出一些实际的东西,这样会学习的更好,今天呢,就给大家带来利用jquery实现文字和图片提示的效果。

jquery文字提示

先看下效果:
技术分享

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<title>jquery选择器</title>
<script type="text/javascript" src="../jquery/jquery-2.1.4.js"></script>
<style type="text/css">
body{
    margin:0;
    padding:40px;
    background:#fff;
    font:80% Arial, Helvetica, sans-serif;
    color:#555;
    line-height:180%;
}

#tooltip{
    position:absolute;
    border:1px solid #333;
    background:#f7f5d1;
    padding:1px;
    color:#333;
    display:none;
}
</style>
<script type="text/javascript">
    $(function(){
                $("a.tooltip").mouseover(function(e){
                    //创建div元素
                    var tooltip = "<div id=‘tooltip‘>"+this.title+"</div>";
                    //添加到dom中
                    $("body").append(tooltip);
                    //设置div的样式
                    $("#tooltip")
                        .css({
                            "top":e.pageY+"px",
                            "left":e.pageX+"px"
                        }).show("fast");
                }).mouseout(function(){
                    $("#tooltip").remove();
                })
            })

</script>
</head>
<body>

        <p><a href="#" class="tooltip" title="这是我的超链接提示1">提示1</a></p>
        <p><a href="#" class="tooltip" title="这是我的超链接提示2">提示2</a></p>
        <p><a href="#" title="这是自带提示1">自带提示1</a></p>
        <p><a href="#" title="这是自带提示2.">自带提示2</a></p>

</body>
</html>

解释一下:
超链接a标签默认为我们提供了一个提示的title属性,看下我们自己定义的提示:
$(“a.tooltip”).mouseover(function(e)){}
这句的意思是得到a标签中class=”tooltip”的元素,设置鼠标移到上面的事件,e表示该元素。

$("#tooltip")
    .css({
        "top":e.pageY+"px",
        "left":e.pageX+"px"
    }).show("fast");

为新创建的id=”tooltip”的元素添加一个css样式,规定以像素计的 top 和 left 坐标。show(“fast”)表示快速显示该元素。

图片提示

下面给大家带来一个模仿网上很多的图片提示的效果。即将鼠标滑动到小图上显示对应的大图片。
效果如下:
技术分享


<html>
  <head>
    <title>图片显示.html</title>
    <meta http-equiv="content-type" content="text/html; charset=GBK">

    <style type="text/css">
body{
    margin:0;
    padding:40px;
    background:#fff;
    font:80% Arial, Helvetica, sans-serif;
    color:#555;
    line-height:180%;
}
img{border:none;}
ul,li{
    margin:0;
    padding:0;
}
li{
    list-style:none;
    float:left;
    display:inline;
    margin-right:10px;
    border:1px solid #AAAAAA;
}

/* tooltip */
#tooltip{
    position:absolute;
    border:1px solid #ccc;
    background:#333;
    padding:2px;
    display:none;
    color:#fff;
}
</style>
    <script type="text/javascript" src="../jquery/jquery-2.1.4.js"></script>
    <script type="text/javascript">     
            $(function(){
            var x =10;
            var y = 20;
                $("a.tooltip").mouseover(function(e){
                    this.myTitle = this.title;
                    this.title="";
                    var imgTitle = this.myTitle?"<br/>"+this.myTitle:"";    
                    //创建div元素
                    var tooltip = "<div id=‘tooltip‘><img src=‘"+this.href+ "‘ alt=‘产品预览图‘"+imgTitle+"</div>";
                    //添加到dom中
                    $("body").append(tooltip);
                    //设置div的样式
                    $("#tooltip")
                        .css({
                            "top":(e.pageY+y)+"px",
                            "left":(e.pageX+x)+"px"
                        }).show("fast");
                }).mouseout(function(){
                    //如果在滑出时不将值重新赋给title属性,下次滑入时title的值就为空了
                    this.title = this.myTitle;
                    $("#tooltip").remove();
                }).mousemove(function(e){
                    $("#tooltip")
                        .css({
                            "top":(e.pageY+y)+"px",
                            "left":(e.pageX+x)+"px"
                        });
                });
            })
    </script>
  </head>

  <body>
    <ul>
        <li><a href="../images/apple_1_bigger.jpg" class="tooltip" title="苹果 iPod"><img src="../images/apple_1.jpg" alt="苹果 iPod" /></a></li>
        <li><a href="../images/apple_2_bigger.jpg" class="tooltip" title="苹果 iPod nano"><img src="../images/apple_2.jpg" alt="苹果 iPod nano"/></a></li>
        <li><a href="../images/apple_3_bigger.jpg" class="tooltip" title="苹果 iPhone"><img src="../images/apple_3.jpg" alt="苹果 iPhone"/></a></li>
        <li><a href="../images/apple_4_bigger.jpg" class="tooltip" title="苹果 Mac"><img src="../images/apple_4.jpg" alt="苹果 Mac"/></a></li>
    </ul>
  </body>
</html>

说明一下:
代码和上面的文字提示很相似,只不过增加了一个跟随鼠标滑动的事件。比较简单。

全选和全不选

效果:
技术分享


<html>
  <head>
    <title>全选、全不选、反选1.html</title>

    <meta http-equiv="content-type" content="text/html; charset=gbk">

    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
    <script type="text/javascript" src="../jquery/jquery-2.1.4.js"></script>
    <script type="text/javascript">

        $(function(){
            //全选/全不选
            $("#checkedAll").bind("click",function(){//给id=#checkedAll的元素绑定一个click事件

                //所有复选框的checked属性的值和控制全选的复选框的checked属性的值一样。所以代码可以这样写
                $("[name=items]:checkbox").attr("checked",this.checked);
            });
            //提交
            $("#send").click(function(){
                var str="您选中的是: \r\n";
                $("[name=items]:checkbox:checked").each(function(){
                    str += $(this).val() + "\r\n";
                });
                alert(str);
            });
        })
    </script>
  </head>

  <body>
    <form action="#">
        你爱好的运动是?
        <input type="checkbox" id="checkedAll"/>全选/全不选<br/>
        <input type="checkbox" name="items" value="足球">足球
        <input type="checkbox" name="items" value="篮球">篮球
        <input type="checkbox" name="items" value="羽毛球">羽毛球
        <input type="checkbox" name="items" value="乒乓球">乒乓球<br/>
        <input type="button" id="send" value="提交"/>
    </form>
  </body>
</html>

说明一下:
each函数表示以每一个匹配的元素作为上下文来执行一个函数,就是说,每一次执行传递进来的函数时,函数中的this关键字都指向一个不同的DOM元素

相册展示

效果如下:
技术分享


<html>
 <head>
  <title> Id选择器和show,hide</title>

 </head>

 <body>
        <h2>标签选择器,id选择器,通过css方法添加样式,show(),hide练习题</h2>
        <div id="showImgDiv" style="display:none;position:absolute">
           <div id="closeDiv">关闭</div>
           <img src="" id="showImg" width="450" height="400">
        </div>
        <table width="400" height="400" align="center" id="tbl"">
            <tr>
                <td><img src="../images/apple_1.jpg"/></td>
                <td><img src="../images/apple_2.jpg"/></td>
                <td><img src="../images/apple_3.jpg"/></td>
            </tr>
        </table>
          <script language="javascript" src="../jquery/jquery-2.1.4.js"></script>
        <script language="javascript">
            $("img").click(function(){
                var setxy = $("#tbl").offset();
                $("#showImgDiv").css({"left":setxy.left,"top":setxy.top});
                $("#showImg").attr("src",this.src);
                $("#showImgDiv").show(1000);
            });
            $("#closeDiv").click(function(){
                $("#showImgDiv").hide(1000);
            });
        </script>

 </body>
</html>

可以看到这里我预先定义了一个id=showImgDiv的div用来隐藏要显示的大图和关闭按钮。
使用(img).click(function())image(“#tbl”).offset();会返回选中的元素的相对偏移,包含两个整型属性:top 和 left

ok,今天就给大家带来这么几个简单的jquery简单案例。

jquery简单案例

标签:jquery实现   效果   

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

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