温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

HTML基础(jQuery续)

发布时间:2020-07-19 15:45:06 来源:网络 阅读:522 作者:Rmeo 栏目:web开发

本篇接上篇继续介绍jQuery的一些用法:

5、文档处理: 对HTML页面的内容进行一些增删改改的操作。

涉及到的知识点:

    appendTo :把匹配的元素追加到另一个指定的元素集合中

     prepend  :向每个匹配的元素内容之前插入内容

    clone   :复制匹配的元素

    remove   :删除匹配的元素

    empty   :清空匹配的元素的所有子元素

例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <div id="d1">
        <div>
            <a onclick="Addto(this,'#d1');"> + </a> <!--点击此加号会自动添加-->
            <input type="text" />
        </div>
    </div>

    <div ></div>

    <div id="d2">
        <textarea >文本一</textarea>
        <input type="button" value="左移到右" onclick="Move(this);"/>
        <textarea >文本二</textarea>
        <input type="button" value="清空文本" onclick="Empty();"/>
    </div>

    <script src="/jquery-2.2.0.js"></script>
    <script>
        function Addto(ths,con){
            var cp = $(ths).parent().clone();   //找到当前元素的父标签并复制其所有内容
            //修改获取到的内容:
            //首先把第一个子元素的文本改成‘—’
            //然后再把里面的onclick属性值改成Remove(this')
            cp.children(':first').text('-').attr("onclick","Remove(this)");
            cp.appendTo(con);   //把修改后的内容追加到传入的ID所在元素的最后面
        }

        function Remove(ths){
            $(ths).parent().remove();   //找到当前元素的父元素 并将其删除,也就是删除自己。
        }

        function Move(ths){
            var cp = $(ths).prev().text();  //获取文本一的内容
            $(ths).prev().text('');     //获取完成后清空文本一
            cp = cp + '\n'              //增加换行符
            $(ths).next().prepend(cp);  //查找到文本二所在元素位置并在文本二之前插入文本一内容
        }

        function Empty(){
            $('textarea').empty();  //清空所有的textarea元素的内容
        }
    </script>
</body>
</html>

6、事件

涉及到知识点:

    ready:当页面DOM加载完成后执行包含的代码

    focus:设置页面某元素获取焦点,也可设置获取焦点后执行代码

    blur:当元素失去焦点时触发并执行代码

    change:当元素内容发生改变时触发

    bind:为某元素绑定一个事件

    click:单击事件

    hover:鼠标悬停事件(鼠标移动到一个对象上及移出这个对象时)的方法

 

例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        .change_color{
            background-color: deepskyblue;
        }
        .bk{
            border: solid 2px green;
        }
    </style>
</head>
<body>
    <input id="d1" type="text">
    <input id="d2" type="button" value="隐藏输入框">

    <script src="/jquery-2.2.0.js"></script>
    <script>
        
        $(function(){
            //当页面DOM加载完成后执行,$(document).ready(function(){ 的简写方式  
               
            $('#d1').focus();   //自动把焦点设置到ID为d1的元素上

            $('#d1').blur(function(){   //当元素失去焦点时执行
                $(this).change(function(){  //如果元素内容发生改变时执行
                    $(this).addClass('bk'); //修改元素边框样式
                });
            });

            $('#d2').bind("click",function(){   //为ID为d2的元素绑定一个click事件
                $('#d1').hide();    //隐藏ID为d1的元素
            });

            $('#d2').hover(     //当ID为d2的元素发生鼠标悬停事件时执行
                function(){
                  $(this).addClass('change_color'); //鼠标悬停时添加样式
                },
                function(){
                    $(this).removeClass('change_color');    //鼠标移走时去除样式
                }
            );
        });
    </script>
</body>
</html>

7、自定义插件

说明:jQuery虽然已经提供了很多方法,但是总会有某些时候我们想自定义一些方法。jQuery提供了一个插件机制来满足此类需求。

例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>

    <script src="/jquery-2.2.0.js"></script>
    <script>
        (function(arg){         //自执行函数,这里的arg是一个形参,值是最后的括号中传入的jQuery
            arg.extend({        //jquery扩展方法的语法:等于 jQuery.extend
               "login":function(){  //格式为“方法名称”:方法主体代码
                   return 123;    //执行的代码
               }
            });
        })(jQuery);     //传入参数值

        var ret = $.login();    //执行自定义的jQuery方法
        console.log(ret);       //查看结果
    </script>
</body>
</html>


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI