jQuery 学习归纳2 --- jQuery 常用API(属性、文本、元素、尺寸位置操作)

        在上一节我们学习了jQuery的基本使用方法。随后学习了jQuery的选择器、筛选器,明白了jQuery对象和DOM对象的异同。最后学习了jQuery的一些效果(显示隐藏、滑动、淡入淡出、时事件切换)。

        本节将要学习对jQuery对象属性、文本、元素、

attr(''属性'') // 类似原生 getAttribute()

尺寸位置的操作。

一、jQuery 属性操作

1.1 设置或获取元素固有属性值 prop()

        所谓元素固有属性就是元素本身自带的属性,比如<a>元素里面的 href,比如<input>元素里面的 type。

        1. 获取属性语法

prop(''属性'')

        2. 设置属性语法

prop(''属性'', ''属性值'')

1.2 设置或获取元素自定义属性值 attr()

        用户自己给元素添加的属性,我们称为自定义属性。 比如给 div 添加 index =“1”。

        1. 获取属性语法

attr(''属性'') // 类似原生 getAttribute()

        2. 设置属性语法

attr(''属性'', ''属性值'') // 类似原生 setAttribute()

1.3 数据缓存 data()

        data() 方法可以在指定的元素上存取数据,并不会修改 DOM 元素结构。一旦页面刷新,之前存放的数据都将被移除。

        1. 附加数据语法

data(''name'',''value'') // 向被选元素附加数据

        2. 获取数据语法

date(''name'') // 向被选元素获取数据

二、jQuery 文本属性值

        主要针对元素的内容还有表单的值操作。

2.1 普通元素内容 html()( 相当于原生inner HTML)

html() // 获取元素的内容
html(''内容'') // 设置元素的内容

2.2 普通元素文本内容 text() (相当与原生 innerText)

text() // 获取元素的文本内容
text(''文本内容'') // 设置元素的文本内容

2.3 表单的值 val()( 相当于原生value)

val() // 获取元素的文本内容
val(''文本内容'') // 设置元素的文本内容
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="jquery.min.js"></script>
</head>

<body>
    <div>
        <span>我是内容</span>
    </div>
    <input type="text" value="请输入内容">
    <script>
        // 1. 获取设置元素内容 html()
        console.log($("div").html());
        // $("div").html("123");
        // 2. 获取设置元素文本内容 text()
        console.log($("div").text());
        $("div").text("123");

        // 3. 获取设置表单值 val()
        console.log($("input").val());
        $("input").val("123");
        console.log($("input").val());
    </script>
</body>

</html>

三、jQuery 元素操作

        主要是对jQuery对象进行遍历、创建、添加、删除元素操作。

3.1 遍历元素

        jQuery 隐式迭代是对同一类元素做了同样的操作。 如果想要给同一类元素做不同操作,就需要用到遍历each()。

        方法一:

$("div").each(function (index, domEle) { xxx; })

        1. each() 方法遍历匹配的每一个元素。主要用DOM处理。 each 每一个

        2. 里面的回调函数有2个参数: index 是每个元素的索引号; demEle 是每个DOM元素对象,不是jquery对象

        3. 所以要想使用jquery方法,需要给这个dom元素转换为jquery对象 $(domEle)

// 1. each() 方法遍历元素 
            var arr = ["red", "green", "blue"];
            $("div").each(function (i, domEle) {
                // 回调函数第一个参数一定是索引号  可以自己指定索引号号名称
                console.log(i);
                // 回调函数第二个参数一定是 dom元素对象 也是自己命名
                console.log(domEle);
                // domEle.css("color"); dom对象没有css方法
                $(domEle).css("color", arr[i]);
                sum += parseInt($(domEle).text());
            })

        方法2:$.each(对象,function(index,ele))

        可以遍历任意对象。一般用于处理数据。

            //2. $.each() 方法遍历元素 主要用于遍历数据,处理数据
            $.each($("div"), function(i, ele) {
                console.log(i);
                console.log(ele);

            });

        1. $.each()方法可用于遍历任何对象。主要用于数据处理,比如数组,对象

        2. 里面的函数有2个参数: index 是每个元素的索引号; element 遍历内容 

            //对于键值对形式,i是名,ele是值
            $.each({
                name: "SYF",
                age: 18
            }, function (i, ele) {
                console.log(i); // 输出的是 name age 属性名
                console.log(ele); // 输出的是 SYF  18 属性值


            })

3.2  创建元素

        语法:动态的创建了一个

$(''<li></li>''); 

3.3 添加元素

3.3.1 内部添加

        element.append(''内容'') 
        //把内容放入匹配元素内部最后面,类似原生 appendChild。
        element.prepend(''内容'') 
        //把内容放入匹配元素内部最前面。

3.3.2 外部添加

        element.after(''内容'') 
        // 把内容放入目标元素后面
        element.before(''内容'') 
        // 把内容放入目标元素前面

3.3.3 内部添加和外部添加的区别

        1、内部添加元素,生成之后,它们是父子关系。

        2、外部添加元素,生成之后,他们是兄弟关系。

3.4 删除元素

        // 删除匹配的元素(本身)
        element.remove() 
        // 删除匹配的元素集合中所有的子节点
        element.empty() 
        // 清空匹配的元素内容
        element.html('''') 

        1、remove 删除元素本身。 

        2、empt() 和 html('''') 作用等价,都可以删除元素里面的内容,只不过 html 还可以设置内容。

四、jQuery 尺寸、位置操作

4.1 jQuery 尺寸

         1、以上参数为空,则是获取相应值,返回的是数字型。

         2、如果参数为数字,则是修改相应值。

         3、参数可以不必写单位。

4.2 jQuery 位置

        位置主要有三个: offset()、position()、scrollTop()/scrollLeft()

4.2.1. offset() 设置或获取元素偏移

        1、 offset() 方法设置或返回被选元素相对于文档的偏移坐标,跟父级没有关系。

        2、该方法有2个属性 left、top 。offset().top 用于获取距离文档顶部的距离,offset().left 用于获取距离文档左侧的距离。

        3、可以设置元素的偏移:offset({ top: 10, left: 30 })

<script>
        $(function() {
            // 1. 获取设置距离文档的位置(偏移) offset
            console.log($(".son").offset());
            console.log($(".son").offset().top);
            // $(".son").offset({
            //     top: 200,
            //     left: 200
            // });
            // 2. 获取距离带有定位父级位置(偏移) position   如果没有带有定位的父级,则以文档为准
            // 这个方法只能获取不能设置偏移
            console.log($(".son").position());
            // $(".son").position({
            //     top: 200,
            //     left: 200
            // });
        })
    </script>

4.2.2. position() 获取元素偏移

        1、position() 方法用于返回被选元素相对于带有定位的父级偏移坐标,如果父级都没有定位,则以文档为准。

        2、 该方法有2个属性 left、top。position().top 用于获取距离定位父级顶部的距离,position().left 用于获取距离定 位父级左侧的距离。

        3、该方法只能获取。

<script>
        $(function() {

            // 2. 获取距离带有定位父级位置(偏移) position   如果没有带有定位的父级,则以文档为准
            // 这个方法只能获取不能设置偏移
            console.log($(".son").position());

        })
    </script>

4.2.3. scrollTop()/scrollLeft() 设置或获取元素被卷去的头部和左侧

        1、 scrollTop() 方法设置或返回被选元素被卷去的头部。

        2、 不跟参数是获取,参数为不带单位的数字则是设置被卷去的头部。

4.3  jQuery 位置综合案例 --- 返回顶部

        案例分析:1、首先获取希望显示返回顶部按钮的距离,可以使用 .offset().top,获得。2、给window添加滚动事件,判断如果大于(1)中的距离,显示按钮,否则隐藏。3、点击按钮,返回顶部。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        body {
            height: 2000px;
        }

        .back {
            position: fixed;
            width: 50px;
            height: 50px;
            background-color: aquamarine;
            right: 30px;
            bottom: 100px;
            display: none;
        }

        .container {
            width: 900px;
            height: 500px;
            background-color: skyblue;
            margin: 400px auto;
        }
    </style>
    <script src="jquery.min.js"></script>
</head>

<body>
    <div class="back">返回顶部</div>
    <div class="container">
    </div>
    <script>
        $(function () {
            $(document).scrollTop(100);
            // 被卷去的头部 scrollTop()  / 被卷去的左侧 scrollLeft()
            // 页面滚动事件
            var boxTop = $(".container").offset().top;
            $(window).scroll(function () {
                // console.log(11);
                console.log($(document).scrollTop());
                if ($(document).scrollTop() >= boxTop) {
                    $(".back").fadeIn();
                } else {
                    $(".back").fadeOut();
                }
            });
            // 返回顶部
            $(".back").click(function () {
                // $(document).scrollTop(0);
                $("body, html").stop().animate({
                    scrollTop: 0
                });
                // $(document).stop().animate({
                //     scrollTop: 0
                // }); 不能是文档而是 html和body元素做动画
            })
        })
    </script>
</body>

</html>

  • 13
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对不起,我无法提供淘宝精品服饰案例的 jQuery 代码。但是,我可以为您提供一些关于如何使用 jQuery 开发淘宝精品服饰案例的一般指导。 首先,您需要引入 jQuery 库。您可以在 HTML 文件中使用以下代码来引入 jQuery: ```html <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> ``` 接下来,您可以使用 jQuery 来处理页面中的元素,例如添加、删除、修改元素的内容和样式等。下面是一个简单的例子,展示了如何使用 jQuery 选择元素,并为其添加点击事件: ```html <!DOCTYPE html> <html> <head> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> </head> <body> <h1>淘宝精品服饰案例</h1> <div id="item1">精品T恤</div> <div id="item2">精品裤子</div> <script> $(document).ready(function() { // 选择元素并添加点击事件 $("#item1").click(function() { alert("您点击了精品T恤!"); }); $("#item2").click(function() { alert("您点击了精品裤子!"); }); }); </script> </body> </html> ``` 在上面的例子中,我们使用 `$` 符号来表示 jQuery 对象,然后通过选择器选择元素(使用 `#` 表示选择 ID),并使用 `click` 方法为选定的元素添加点击事件。当用户点击相应的元素时,就会弹出一个提示框。 以上只是一个简单的示例,实际开发中您可以根据需求使用更多的 jQuery 方法和功能来构建淘宝精品服饰案例。希望对您有所帮助!如果您有更多问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值