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简单案例。

时间: 2024-10-20 18:45:05

jquery简单案例的相关文章

中国省市区地址三级联动jQuery插件 案例下载

中国省市区地址三级联动jQuery插件 案例下载 distpicker 是一款可以实现中国省市区地址三级联动jQuery插件.它使用简单,简单设置即可完成中国省市区地址联动效果. 安装 可以通过npm或bower来安装该三级联动插件. npm install distpicker bower install distpicker 使用方法 HTML结构 基本的HTML结构是使用一个<div>容器来包裹一组<select>元素. <div><!-- containe

keepalived简单案例

---------------------------------- 一.前言 二.环境 三.Keepalived体系架构 四.安装Keepalived 五.案例配置 ---------------------------------- 一.前言 keepalived是一个类似于layer3,4&5交换机制的软件,也就是我们平时说的第3层.第4层和第5层交换.Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的

[Design Pattern] Mediator Pattern 简单案例

Meditor Pattern,即调解模式,用一个调解类类处理所有的沟通事件,使得降低多对象之间的沟通难度,属于行为类的设计模式.为了方便理解记忆,我也称其为,沟通模式. 下面是一个调解模式的简单案例. ChatRoom 提供公用发送短信的方法.User 全部通过 ChatRoom 类发送信息进行沟通.MediatorPatternDemo 演示调解模式. 代码实现 ChatRoom 提供发送信息的方法 public class ChatRoom { public static void sho

[Design Pattern] Iterator Pattern 简单案例

Iterator Pattern,即迭代时模式,按照顺序依次遍历集合内的每一个元素,而不用了解集合的底层实现,属于行为类的设计模式.为了方便理解记忆,我也会称其为遍历模式. 下面是一个迭代器模式的简单案例. Iterator 定义了迭代接口, 仅 hasNext 和 next 两个方法.Container 定义了集合的接口,必须包含一个返回迭代器类 Iterator 的方法.NameRepository 是容器的具体类,实现 Container 接口,并拥有一个内部类 NameIterator

[Design Pattern] Observer Pattern 简单案例

Observer Pattern,即观察者模式,当存在一对多关系,例如一个对象一有变动,就要自动通知被依赖的全部对象得场景,属于行为类的设计模式. 下面是一个观察者模式的简单案例. Observer 定义观察者的接口,定义需要观察的对象,已经被通知的接口.BinaryObserver, OctalObserver, HexaObserver 各自实现了 Observer 接口. Subject 是被观察的对象,记录了观察该对象的观察者列表,自身有变动,即可通知观察者列表中的各个观察者. 代码实现

[Design Pattern] Command Pattern 简单案例

Command Pattern, 即命令模式,把一个命令包裹在一个对象里面,将命令对象传递给命令的执行方,属于行为类的设计模式 下面是命令模式的一个简单案例. Stock 代表被操作的对象.Order 定义命令的接口,BuyStock, SellStock 是具体类,实现 Order 接口.Broker 是命令的执行方.CommandPatternDemo 演示命令模式. 代码实现 Order, 命令接口 public interface Order { public void execute(

jQuery简单的轮播特效

<!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> <meta http-equiv="Content-

jquery 简单弹出层

预定义html代码:没有 所有代码通过js生成和移除. 预定义css /* 基本弹出层样式 */ .my-popup-overlay { width:100%; height:auto; /* width height is defined by javascript */ position: absolute; top:0; left: 0; z-index: 1000; background-color: #000; opacity: 0.2; *filter:alpha(opacity=2

jquery 简单弹出层(转)

预定义html代码:没有 所有代码通过js生成和移除. 预定义css /* 基本弹出层样式 */ .my-popup-overlay { width:100%; height:auto; /* width height is defined by javascript */ position: absolute; top:0; left: 0; z-index: 1000; background-color: #000; opacity: 0.2; *filter:alpha(opacity=2