JQuery-文档处理

目录

一、内部插入

1.追加到父元素的内部最后

2.追加到父元素的内部最前;

二、外部插入

三、删除与克隆

1、删除

2、克隆

四、替换

五、包装 

六、自定义动画

七、无缝滚动


一、内部插入

1.追加到父元素的内部最后

    jquery对象.append(参数)   在jquery对象的内部最后追加参数里的内容

    参数:字符串/jquery对象

$("button").click(function () {
         $(".box").append("world");
         var $span = $("<span></span>");
         var $span = $("<span>"); //创建一个span jquery对象
         var $span = $("<span>span元素</span>"); //创建一个span jquery对象
         var $span = $("<span>"); //创建一个span jquery对象
         $(".box").append($span);
    });


子jquery对象.appendTo(父jquery对象)

 把子jquery对象追加到父jquery对象的内部最后

$("button").click(function () {
        var $span = $("<span></span>");
        var $span = $("<span>"); //创建一个span jquery对象
        $span.appendTo($(".box"));
    });


2.追加到父元素的内部最前;

    jquery对象.prepend(参数)   在jquery对象的内部最后追加参数里的内容

    参数:字符串/jquery对象

$("button").click(function () {
        var $span = $("<span></span>");
        var $span = $("<span>"); //创建一个span jquery对象
        var $span = $("<span>span元素</span>"); //创建一个span jquery对象
        $(".box").prepend("world");
    });


子jquery对象.prependTo(父jquery对象)

    把子jquery对象追加到父jquery对象的内部最后

$("button").click(function () {
        var $span = $("<span></span>");
        var $span = $("<span>"); //创建一个span jquery对象
        var $span = $("<span>span元素</span>"); //创建一个span jquery对象
        $span.prependTo($(".box"));
        $span.prependTo(".box");
    });
var arr = ["张三", "李四", "王二", "麻子"];

      $(".box").html(function (i) {
        // console.log(i);

        return `${arr[i]}`;

      });

二、外部插入

  • after()方法

该方法在匹配元素集合中的每个元素之后插入由参数指定的内容并返回jQuery对象。

jQuery对象.after(新内容)  在jQuery对象的后面插入新内容

         

$(".box span").after($("<a href='#'>后新链接</a>"));
  • before()方法

此方法将参数指定的内容插入到匹配元素集合中的每个元素之前,并返回jQuery对象。

jQuery对象.before(新内容)  在jQuery对象的前面插入新内容 

$(".box span").before("加油");
 
$(".box span").before($("<a href='#'>新链接</a>"));
 
$(".box span").before($("button"));
  • insertAfter()方法

该方法在匹配元素集合中的每个元素插入到目标元素之后并返回jQuery对象

新jQuery对象.insertAfter(jQuery对象)

      $("<a href=''>超链接</a>").insertAfter(".box span");
  • insertBefore()方法

 该方法在匹配元素集合中的每个元素插入到目标元素之前并返回jQuery对象

新jQuery对象.insertBefore(jQuery对象)

$("<a href=''>超链接</a>").insertBefore(".box span");
 
$("<a href=''>超链接</a>").insertBefore($(".box span"));


三、删除与克隆

1、删除

 detach() 方法移除被选元素,包括所有的文本和子节点。然后它会保留数据和事件。

    该方法会保留移除元素的副本,允许它们在以后被重新插入。

    提示:如需移除元素及它的数据和事件,请使用 remove() 方法代替。

    提示:如只需从被选元素移除内容,请使用 empty() 方法。

$(".box span").remove(); //删除所有span 本身及后代
 
$(".box span").detach(); //删除所有span
 
$(".box span").empty(); //清空内容剩一个span壳 删除后代 本身还在


2、克隆

jQuery对象.clone(参数)

    参数: 可选 布尔值 默认为false仅复制元素(本身及后代),不克隆元素本身事件,若为true

var $c = $(".box span").clone(); //克隆 本身及后代
 $(".box").after($c);


四、替换

replaceAll() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串,该函数会替换所有匹配到的子字符串

replaceWith() 方法把被选元素替换为新的内容。

 $(".btn3").click(function () {
      $(".box span").replaceWith("这个老六啊"); //替换
      $(".box span").replaceWith("<a href='#'>这个老六啊</a>"); //替换
      $(".box span").replaceWith($("<a href='#'>这个老六啊</a>")); //替换
      $("<a href='#'>这个老六啊</a>").replaceAll(".box span"); //替换
    });


五、包装 

$(".btn3").click(function () {
      $("span").wrap("<div></div>");//每一个选到的元素各自用<div></div>包起来
      $("span").wrapAll("<div></div>"); //把所有选到的元素用一个<div></div>包起来
      $("span").wrapInner("<b></b>");
      $("span").unwrap(); //删除父元素 去除包裹元素
    });


六、自定义动画

$("button").click(function () {
      // 第一种
      //   $(".box").animate({ left: "800px" }, 2000, function () {
      //     // console.log("动画执行完毕");
      //     $(this).animate({ top: "400px" }, 2000);
      //   });
 
      //   第二种
      $(".box")
        .animate({ left: "800px" }, 2000)
        .animate({ top: "400px" })
        .animate({ left: "0" }, 2000)
        .animate({ top: "0" });
 
      //   $(".box").animate({ left: "+=800px" }); //相对动画
    });


七、无缝滚动

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script src="js/jquery-3.6.0.min.js"></script>
    <style>
      * {
        padding: 0;
        margin: 0;
      }
      ul {
        list-style: none;
      }
      .box {
        overflow: hidden;
        width: 400px;
        height: 200px;
        margin: 40px auto;
        box-shadow: 0 0 0 2px #333;
      }
      .box ul li {
        height: 40px;
        line-height: 40px;
      }
    </style>
  </head>
  <body>
    <div class="box">
      <ul>
        <li>jQuery从入门到精通1</li>
        <li>jQuery从入门到精通2</li>
        <li>jQuery从入门到精通3</li>
        <li>jQuery从入门到精通4</li>
        <li>jQuery从入门到精通5</li>
        <li>jQuery从入门到精通6</li>
        <li>jQuery从入门到精通7</li>
        <li>jQuery从入门到精通8</li>
        <li>jQuery从入门到精通9</li>
        <li>jQuery从入门到精通10</li>
      </ul>
    </div>
  </body>
  <script>
    function move() {
      $(".box ul").animate({ marginTop: "-=40px" }, 400, function () {
        var $first = $(".box ul li").first(); //查找第一个li
        $(this).append($first); //把滚出去的第一个li追加到ul的内部最后
        $(this).css("margin-top", 0); //把ul的margin-top快速修改为0
      });
    }
    window.setInterval(move, 2000);
  </script>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

让我打个盹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值