前言

    记录一下学习的笔记。参考教程:jQuery菜鸟教程jQuery中文文档

一、文本操作

先来看html文档:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>内容操作</title>
</head>
<body>
    <div id="i1">
        内容1
        <a id="i2">
            内容2
        </a>
    </div>

    <div>
        <input id="i3" type="text" >
    </div>
    <script src="https://code.jquery.com/jquery-1.12.4.js"  integrity="sha256-Qw82+bXyGq6MydymqBxNPYTaUXXq7c8v3CwiYwLLNXU="  crossorigin="anonymous"></script>

</body>
</html>
1.获取文本内容 $().text()
$("#i1").text()

结果:

"
        内容1
        
            内容2
        
    "
2.设置文本内容 $().text(需要设置的内容)
$("#i2").text('新的内容')
$("#i2").text()

结果:

'新的内容'
3.获取文本内容 $().html()
$("#i1").html()

结果:

"
        内容1
        <a id="i2">新的内容</a>
    "
4.设置文本内容 $().html(需要设置的内容)
$("#i1").html('<div>dasdsa</div>')
$("#i1").html()

结果:

"<div>dasdsa</div>"

注:text()和html()的区别:

  • 在获取文本内容的时候,text()只是获取到标签内的内容,而html()则是连标签也会获取到;
  • 在设置文本内容的时候,text()只是将文本完全设置在需要设置的地方,而html()则会解析其中的标签元素。

对于input系列,有专门的文本操作方法:

5.input系列获取文本内容 $().val()
$('#i3').val()

结果:

""
6.input系列设置文本内容 $().val(需要设置的内容)
$('input[id="i3"]').val("dasd")

二、样式操作

    先来看一个模拟开关灯效果的例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>模拟开灯关灯效果</title>
    <style>
        .hide{
            display: none;
        }
    </style>
</head>
<body>
    <input id="i1" type="button" value="开关">
    <div class="c1 hide">
        adsadsd
    </div>
    <script src="https://code.jquery.com/jquery-1.12.4.js"  integrity="sha256-Qw82+bXyGq6MydymqBxNPYTaUXXq7c8v3CwiYwLLNXU="  crossorigin="anonymous"></script>
    <script>
        $('#i1').click(function () {
            // if ($('.c1').hasClass('hide')){
            //     $('.c1').removeClass('hide');
            // }
            // else{
            //     $('.c1').addClass('hide');
            // }
            $('.c1').toggleClass('hide');   //这一句就相当于上面那一大串代码
        })
    </script>
</body>
</html>

主要有三个方法:addClass(),removeClass(),toggleClass()

  • addClass():添加样式;
  • removeClass():移除样式;
  • toggleClass():相当于代码中注释掉的功能。注释掉的功能:判断是否含有hide这个样式,如果有则移除,如果没有则添加。

三、属性操作

  • $(’#i1’).attr() # 专门用来做自定义属性
  • attr():传一个值时获取属性的值,传两个参数是设置一个属性,如果这个属性有,则覆盖原来的属性
  • $(’#i1’).removeAttr() # 删除属性
  • $(’#i1’).prop() # 专门为checkbox和radio做操作的
  • $(’#i1’).prop(‘checked’; # 获取checked属性的值
  • $(’#i1’).prop(‘checked’,true); # 选中
  • $(’#i1’).prop(‘checked’,false); # 取消选中

    来看一个TAB菜单切换的例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>TAB菜单切换</title>
    <style>
        .hide{
            display: none;
        }
        .menu{
            height: 38px;
            background-color: #eeeeee;
            line-height: 38px;
        }
        .menu .menu-item{
            float: left;
            border-right: 1px solid red;
            padding: 0 5px;
            cursor: pointer;
        }
        .content{
            min-height: 100px;
            border: 1px solid #eeeeee;
        }
        .active{
            background-color: brown;
        }
    </style>
</head>
<body>
    <div style="width: 700px; margin: 0 auto">
        <div class="menu">
            <div class="menu-item active" a="1">菜单1</div>
            <div class="menu-item" a="2">菜单2</div>
            <div class="menu-item" a="2">菜单3</div>
        </div>
        <div class="content">
            <div b="1">内容1</div>
            <div class="hide" b="2">内容2</div>
            <div class="hide" b="3">内容3</div>
        </div>
    </div>

    <script src="https://code.jquery.com/jquery-1.12.4.js"  integrity="sha256-Qw82+bXyGq6MydymqBxNPYTaUXXq7c8v3CwiYwLLNXU="  crossorigin="anonymous"></script>
    <script>
        $('.menu-item').click(function () {
            $(this).addClass('active').siblings().removeClass('active');
            // var target = $(this).attr('a');
            // $('.content').children("[b='"+target+"']").removeClass('hide').siblings().addClass('hide');

            //用索引来做
            $('.content').children().eq($(this).index()).removeClass('hide').siblings().addClass('hide');
        })
    </script>
</body>
</html>

四、文档操作

  • append() 往后面添加
  • prepend() 往前面添加
  • after() 最外面的下面添加
  • before() 最外面的上面添加
  • remove() 删除
  • empty() 只删除内容,不删除索引
  • clone() 克隆

来看一个简单的文档操作的例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>文档操作</title>
</head>
<body>
    <input id="t1" type="text">
    <input id="a1" type="button" value="添加">
    <input id="a2" type="button" value="删除">
    <input id="a3" type="button" value="复制">
    <ul id="u1">
        <li>1</li>
        <li>2</li>
    </ul>
    <script src="https://code.jquery.com/jquery-1.12.4.js"  integrity="sha256-Qw82+bXyGq6MydymqBxNPYTaUXXq7c8v3CwiYwLLNXU="  crossorigin="anonymous"></script>
    <script>
        $("#a1").click(function () {
            var v = $("#t1").val();
            var temp = "<li>"+v+"</li>";
            $("#u1").append(temp);
        });
        
        $("#a2").click(function () {
            var index = $('#t1').val();
            $('#u1 li').eq(index).remove();
            // $('#u1 li').eq(index).empty();
        });
        $("#a3").click(function () {
            var index = $('#t1').val();
            var v = $('#u1 li').eq(index).clone();
            $("#u1").append(v);
        })
    </script>
</body>
</html>
写在最后

    本文是个人的一些学习笔记,如有侵权,请及时联系我进行删除,谢谢大家.