jQuery—一些常见方法(2)DOM操作【insertBefore(),insertAfter(),appendTo(),prependTo(),before(),after(),append(),prepend(),remove(),on(),off(),scrollTop()】

一、insertBefore()

如下代码:找到span标签,将span标签剪切到div的前面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script>
    <script>
        $(function(){
           $(‘span‘).insertBefore($(‘div‘));
        });
    </script>
</head>
<body>
<div>div</div>
<span>span</span>

</body>
</html>

二、insertAfter()

与insertBefore正好相反

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script>
    <script>
        $(function(){
          // $(‘span‘).insertBefore($(‘div‘));
            $(‘div‘).insertAfter($(‘span‘));  //与insertBefore正好相反
        });
    </script>
</head>
<body>
<div>div</div>
<span>span</span>

</body>
</html>

三、appendTo()

appendTo()与原生的appendChild()一样,将某个节点变成另一个节点的子节点,并且放在最后!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script>
    <script>
        $(function(){
//           $(‘span‘).insertBefore($(‘div‘));
//            $(‘div‘).insertAfter($(‘span‘));  //与insertBefore正好相反

            $(‘div‘).appendTo($(‘span‘));  //将div变成span的子节点,放在最后
        });
    </script>
</head>
<body>
<div>div</div>
<span>span</span>

</body>
</html>

四、prependTo()

与appendTo()相比,不同点就是将某个节点变成另一个节点的子节点,并且放在最前面!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script>
    <script>
        $(function(){
//           $(‘span‘).insertBefore($(‘div‘));
//            $(‘div‘).insertAfter($(‘span‘));  //与insertBefore正好相反
          //  $(‘div‘).appendTo($(‘span‘));  //将div变成span的子节点,放在最后
            $(‘div‘).prependTo($(‘span‘));  //将div变成span的子节点,放在最前
        });
    </script>
</head>
<body>
<div>div</div>
<span>span</span>

</body>
</html>

五、before()

before()方法跟insertBefore()方法效果一样,区别在于:后续操作会不一样!

可以将insertBefore()当作动词,before()当作名词!

类似:after()对应insertAfter()、append()对应appendTo()、prepend()对应prependTo()!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script>
    <script>
        $(function(){
//           $(‘span‘).insertBefore($(‘div‘));  //找到span,并将span插入到div的前面,动词属性
//            $(‘div‘).insertAfter($(‘span‘));  //与insertBefore正好相反
//             $(‘div‘).appendTo($(‘span‘));   //将div变成span的子节点,放在最后
//            $(‘div‘).prependTo($(‘span‘));  //将div变成span的子节点,放在最前
//            $(‘div‘).before($(‘span‘));  //div的前面必须是span,名词属性
            $(‘div‘).before($(‘span‘)).css(‘background‘,‘red‘);  //这个方法是针对div,所以后续操作的是div,即div的背景变红
            $(‘span‘).insertBefore($(‘div‘)).css(‘background‘,‘blue‘);//这个方法是针对span,所以后续操作的是span,即span的背景变蓝
        });
    </script>
</head>
<body>
<div>div</div>
<span>span</span>

</body>
</html>

六、remove()

remove()方法就是删除节点!

七、on()和off()方法

on()方法和off()方法是一对相反方法,object.on(‘click‘,function(){...})就相当于object.click(function(){...}),on()方法更强大一些,不仅可以用于click,而且也可以用于其他自己定义的方法,类似于show等等,on()后面的参数可以同时多个,object.(‘click mouseover‘,function(){...}),鼠标移入点击都执行操作,也可以以json格式分别执行不同的操作,类似一下例子,on()相当于开启,off()就相当于关闭.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script>
    <script>
        $(function(){
//           $(‘span‘).insertBefore($(‘div‘));  //找到span,并将span插入到div的前面
//            $(‘div‘).insertAfter($(‘span‘));  //与insertBefore正好相反
//             $(‘div‘).appendTo($(‘span‘));   //将div变成span的子节点,放在最后
//            $(‘div‘).prependTo($(‘span‘));  //将div变成span的子节点,放在最前
//            $(‘div‘).before($(‘span‘));  //div的前面必须是span
//            $(‘div‘).before($(‘span‘)).css(‘background‘,‘red‘);  //这个方法是针对div,所以后续操作的是div,即div的背景变红
//            $(‘span‘).insertBefore($(‘div‘)).css(‘background‘,‘blue‘);//这个方法是针对span,所以后续操作的是span,即span的背景变蓝
 //           $(‘div‘).remove();  //找到div并且删除此节点
//            $(‘div‘).on(‘click mouseover‘,function(){
//                alert(123);
//            })
            <!--json格式,鼠标移入弹出456,鼠标点击弹出123-->
            $(‘div‘).on({
                ‘click‘:function(){
                    alert(123);
                },
                ‘mouseover‘:function(){
                    alert(456);
                    $(‘div‘).off(‘mouseover‘);//执行一次之后就关闭
                }
            })
//            $(‘div‘).on(‘click mouseover‘,function(){
//               alert(123);
//                $(‘div‘).off();
//            })
        });
    </script>
</head>
<body>
<div>div</div>
<span>span</span>

</body>
</html>

八、scrollTop()

获取页面的滚动距离!

时间: 2024-10-22 14:01:17

jQuery—一些常见方法(2)DOM操作【insertBefore(),insertAfter(),appendTo(),prependTo(),before(),after(),append(),prepend(),remove(),on(),off(),scrollTop()】的相关文章

认识JQuery,JQuery的优势、语法、多库冲突、JS原生对象和JQuery对象之间相互转换和DOM操作,常用的方法

(一)认识JQuery  JQuery是一个JavaScript库,它通过封装原生的JavaScript函数得到一套定义好的方法    JQuery的主旨:以更少的代码,实现更多的功能 (二)JQuery的优势 1)可以像CSS一样访问和操作DOM 2)修改CSS控制页面外观 3)简化JS代码操作 4)事件代理更加容易 5)动画效果使用方便 6) Ajax技术更加完美 7)大量的基于Jquery的插件 8)可以自定义扩展功能插件 (三)JQuery的语法 格式:$(selector).actio

jquery学习(二)-DOM操作

来自锋利的jquery第二版 一.DOM分类 DOM分为3类DOM Core(核心).HTML-DOM.CSS-DOM 1.DOM Core:其并不专属于javascript,任何一种支持DOM程序设计的语言都可以使用它.如javascript中的getElementById.getElementByTagName.getAttibute和setAttribute等方法,就是DOM Core的组成部分. 2.HTML-DOM:其比DOM Core出现的还要早,它提供了一些更简明的记号来描述各种H

jQuery 【事件】【dom 操作】

事件  hover( function(){},function(){})   --  鼠标移入移出事件   toggle(function(){},function(){},function(){},....)  -- 循环执行,花括号内各方法循环执行  对象.live("事件名",function(){});  -- 对未来创建的元素进行操作 -- btn1 的点击事件中创建 class="div2" 的 div 放到 id="div1" 的

jQuery 第四章 实例方法 DOM操作之data方法

jquery 里面 的 data 方法比较重要, 所以成一个模块写: 首先, 得知道 data()  干嘛用的, 看淘宝上 有自定义的属性, 为data -  什么什么,   这是为了dom 跟数据有联系,存信息, 存数据.以便以操作, 但是淘宝 把data 等放在行间样式上, 是为了 vue 等 其他框架的使用,在jquery中, jquery为我们提供了一个方法, 就是.data() 以便于我们存信息, 存数据.是用jquery 时,不推荐把 data等信息,写在行间样式了,性能不高,还频繁

jquery的isReady方法(DOM是否加载完)

1 DOMContentLoaded = function() { 2 if ( document.addEventListener ) { 3 document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false ); 4 jQuery.ready(); 5 } else if ( document.readyState === "complete" ) { 6 // we're her

jQuery—一些常见方法(3)【width(),innerWidth(),outerWidth()】

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <script src="../../jq-practice/jq/jquery-2.2.1.min.js"></script> <script> $(function(){ aler

前端页面卡顿?或是DOM操作惹的祸,需优化代码

文档对象模型(DOM)是一个独立 于特定语言的应用程序接口.在浏览器中,DOM接口是以JavaScript语言实现的,通过JavaScript来操作浏览器页面中的元素,这使得 DOM成为了JavaScript中重要的组成部分.在富客户端网页应用中,界面上UI的更改都是通过DOM操作实现的,并不是通过传统的刷新页面实现 的.尽管DOM提供了丰富接口供外部调用,但DOM操作的代价很高,页面前端代码的性能瓶颈也大多集中在DOM操作上,所以前端性能优化的一个主要的关注 点就是DOM操作的优化.DOM操作

jQuery 源码解析(二十五) DOM操作模块 html和text方法的区别

html和text都可以获取和修改DOM节点里的内容,方法如下: html(value)     ;获取匹配元素集合中的一个元素的innerHTML内容,或者设置每个元素的innerHTML内容,                ;value可选,可以是html代码或返回html代码的函数,如果没有参数则获取匹配元素集合中第一个元素的innerHTML内容 text(text)         ;获取匹配元素集合中所有元素合并后的文本内容,或者设置每个元素的文本内容,封装了createTextNo

js day43 Jquery入门(回顾js,Jquery选择器,dom操作)

1     Javascript回顾 问题:Javascript能做什么? 1. 获取操作dom <style> .aa{ background:red} .bb{ background:blue} </style> <body> <div id="dv" title="提示信息" class="aa">AAAAAAAAA</div> <button onclick="f