博客列表 >jQuery中元素的遍历,基本动画知识,基本事件的使用方法,以及Web版相册管理的实战--2018年9月25日13时52分

jQuery中元素的遍历,基本动画知识,基本事件的使用方法,以及Web版相册管理的实战--2018年9月25日13时52分

新竹网络_Terry的博客
新竹网络_Terry的博客原创
2018年09月26日 10:23:34620浏览

今天这节课学习到了jQuery中常用的中种筛选方式,几种基本动画的操作,以及表单和鼠标事件;还有进行Web版相册管理的实战。

实战: 武林高手在线相册

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>在线相册管理</title>
</head>
<style>
    .warp{
        width: 360px;
        height: auto;
        background-color:#efefef;
        border: 3px double grey;
        color: #363636;
        border-radius: 2%;
    }
    .warp .header{
        padding: 15px;
    }
    .warp .header h2{
        text-align: center;
    }
    .add{
        width: 100px;
        height:30px;
        border:none;
        cursor: pointer;
        background-color: skyblue;
        color: white;
    }
    .add:hover{
        background-color: orange;
        font-size: 1.1rem;

    }
    .main{
        overflow: hidden;
    }
    .main ul{
        padding: 0;
        margin: 0;
    }
    .main ul li{
        list-style-type: none;
        float: left;
        margin-left: 20px;
        margin-bottom: 10px;
        width: 150px;
        height: 200px;
        text-align: center;
    }
    .main ul li button{
        margin: 3px;
        border: none;
        border-radius: 5%;
        background-color:lightgreen;
    }
    .main ul li button:hover{
        background-color: orange;
        color: white;
        cursor: pointer;
    }
</style>
<body>
<div class="warp">
    <div class="header">
        <h2>江湖女侠排行榜</h2>
        <p>
            <lable for="">输入图片地址</lable>
            <input type="file" name="img_url" id="img_url" placeholder="图片地址">
        </p>
        <p>
            图片类型:
            <input type="radio" id="rect" name="border" value="0"><label for="rect">直角</label>
            <input type="radio" id="radius" name="border" value="10%"><label for="radius">圆角</label>
            <input type="radio" id="circle" name="border" value="50%"><label for="circle">圆形</label>
        </p>
        <p>
            是否添加阴影:
            <select name="shadow" id="">
                <option value="0">不添加</option>
                <option value="1">添加</option>
            </select>
        </p>
        <p><button class="add">添加图片</button></p>
    </div>
    <div class="main">
        <ul>
            <li>
                <img src="" alt="">
                <button>前</button>
                <button>后</button>
                <button>删</button>
            </li>
        </ul>
    </div>
</div>
<script src="js/jquery-3.3.1.min.js"></script>
<script>
    // 分三步完成
    $(function () {
        $('button.add').on('click',function () {
            // 1.获取图片的相关信息
            // 判断用户是否选择了图片
            let  img_url = $('#img_url').val();
            if (img_url.length===0){
                alert('请选择一张图片');
                $('#img_url').focus();
                return false;
            }
            //获取图片的基本特征
            //获取到图片的外观
            let  img_type=$(':radio:checked').val();
            //是否添加阴影
            let  shadow='none';
            if ($(':selected').val()==='1'){
                shadow='3px 3px 3px #666';
            }
            //2.创建图片并添加到页面中
            console.log('http://127.0.0.5/0918/images/'+img_url.split('\\')[2]);
            img_url='http://127.0.0.5/0918/images/'+img_url.split('\\')[2];

            //创建一个图片
            let img = $('<img>')
                .prop('src',img_url)
                .width(150)
                .height(150)
                .css({  // 给标签设置 style= ""
                    'border-radius': img_type,
                    'box-shadow': shadow
                });
            let   before=$('<button></button>').text('前移');
            let   after=$('<button></button>').text('后移');
            let  remove=$('<button></button>').text('删除');

            //创建一个<li>用来放所有的内容
            let  contaier=$('<li>');
            //将图片和三个按钮打包到<li>中
            contaier.append(img,before,after,remove);
            //将<li>添加到页面中的<ul>中
            contaier.appendTo('ul');
            //3.为三个操作添加功能
            //前移功能
            before.click(function(){
                //第一步获取到要移动的图片
                var current=$(this).parent();
                var prev=current.prev();//前一个元素
                //再前一个元素之前将当前元素插入,实际上就是交换一下位置
                prev.before(current);
            });
            //后移功能
            after.click(function () {
                //第一步获取到要移动的图片
                var current=$(this).parent();
                var  next=current.next();//后一个元素
                next.after(current);
            });
            //删除
            remove.click(function () {
                if (confirm('确定删除吗?')){
                    $(this).parent().remove();
                }
                return false;
            });
        })
    })
</script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

浏览图:

U37S0]@C[DU5WP39OQNGTA3.png

总结:

  1. jQuery中常用的筛选方式包括:

    (1)直接从集合中获取元素:eq(),first(),last();

    (2)根据元素在集合中的关系:

           [1].next(): 向后查询
           [2].prev(); 向前查询
           [3].siblings(): 向前和向后进行双向查询
           [4].parent(): 获取父级元素
           [5].children(),find(),filter(),not():多级查询
           [6].is(),has(): 判断查询

       (3)集合区间查询与元素添加: slice(), add()

  2. jQuery基本动画的操作
       (1)显示,隐藏,切换: show(),hide(),tiggle();
       (2)滑动: slideDown()向下,slideUp()向下,slideToggle()切换;
       (3)淡入淡出: fadeIn()淡入,fadeOut()淡出,fadeTo(),fadeToggle()切换;

  3. jQuery中的基本事件
       (1)鼠标事件: click点击, mouseenter移入,mouseleave移出;
       (2)表单事件: submit提交, change内容改变,focus获取焦点, blur失去焦点





 

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议