jQuery基础知识点总结(DOM操作)jquery

使用jQuery的方式来操作DOM更加的简洁、方便,统一的调用方式方便学习并且可降低学习成本。

1、样式属性操作

1)设置样式属性操作

①设置单个样式:

//第一个参数表示:样式属性名称//第二个参数表示:样式属性值$(selector).css(“color”,“red”);②设置多个样式(也可以设置单个)

//参数为{}(对象)$(selector).css({“color”:“red”,“font-size”:“30px”});2)获取样式属性操作

//参数表示要获取的样式属性名称$(selector).css(“font-size”);2、类操作

1)添加类样式

——addClass(className)为指定元素添加类className

$(selector).addClass(“liItem”);//此处类型不带点,所有类操作的方法类名都不带点2)移除类——removeClass(className)为指定元素移除类className$(selector).removeClass(“liItem”);$(selector).removeClass();//不指定参数,表示移除被选中元素的所有类3)判断有没有类样式

$(selector).hasClass(“liItem”);//返回值为true或false4)切换类样式

$(selector).hasClass(“liItem”);【注意】

1、操作类样式的时候,所有的类名都不带点(.)

2、操作的样式非常少,那么可以通过.css()这个方法来操作

3、操作的样式很多,那么要通过使用类的方式来操作

4、如果考虑以后维护方便(把CSS从js中分离出来)的话,推荐使用类的方式来操作。类比CSS书写位置(把CSS从html中分离出来)

关键字:简约、粗暴、干净利落、直截了当

3、jQuery动画

3.1隐藏显示动画

①show方法

//用法一://参数为数值类型,表示:执行动画时长/*单位为:毫秒(ms),参数2000表示动画执行时长为2000毫秒,即2秒钟*/$(selector).show(2000);//用法二://参数为字符串类型,是jQuery预设的值,共有三个,分别是:slow、normal、fast/*跟用法一的对应关系为:*//*slow:600ms、normal:400ms、fast:200ms*/$(selector).show(“slow”);//用法三://参数一可以是数值类型或者字符串类型//参数二表示:动画执行完后立即执行的回调函数$(selector).show(2000,function(){});//用法四://不带参数,作用等同于css(“display”,”block”)/*注意:此时没有动画效果*/$(selector).show();【注意】:jQuery预设的三组动画效果的语法几乎一致:参数可以有两个,第一个是动画的执行时长,第二个是动画执行完成后的回调函数。

第一个参数可以是:指定字符或者毫秒数

②hide方法

$(selector).hide(1000);$(selector).hide(“slow”);$(selector).hide(1000,function(){});$(selector).hide();3.2滑入滑出动画

①滑入动画效果

$(selector).slideDown(speed,callback);//注意:省略参数或者传入不合法的字符串,那么则使用默认值:400毫秒(同样适用于fadeIn/slideDown/slideUp)$(selector).slideDown();②滑出

//作用:让元素以上拉动画效果隐藏起来$(selector).slideUp(speed,callback);③滑入滑出切换动画效果

$(selector).slideToggle(speed,callback);//参数等同与"隐藏和显示"4、淡入淡出动画

①淡入动画效果

//作用:让元素以淡淡的进入视线的方式展示出来$(selector).fadeIn(speed,callback);②淡出

//作用:让元素以渐渐消失的方式隐藏起来$(selector).fadeOut(1000);③淡入淡出切换动画效果

//作用:通过改变不透明度,切换匹配元素的显示或隐藏状态$(selector).fadeToggle('fast',function(){});//参数等同与"隐藏和显示"④改变不透明度到某个值

//作用:调节匹配元素的不透明度//用法有别于其他动画效果//第一个参数表示:时长//第二个参数表示:不透明度值,取值范围:0-1$(selector).fadeTo(1000,.5);//0全透,1全不透//第一个参数为0,此时作用相当于:.css(“opacity”,.5);$(selector).fadeTo(0,.5);jQuery提供的这几个动画效果控制的CSS属性包括:高度、宽度、不透明度。{height:400px;width:300px;opacity:.4;}

这三个CSS属性的共性是:属性值只有一个,并且这个值是数值(去掉单位后)。

5、自定义动画

注意:所有能够执行动画的属性必须只有一个数字类型的值。

比如:要改变字体大小,要使用:fontSize(font-size),不要使用:font

//作用:执行一组CSS属性的自定义动画//第一个参数表示:要执行动画的CSS属性(必选)//第二个参数表示:执行动画时长(可选)//第三个参数表示:动画执行完后立即执行的回调函数(可选)$(selector).animate({params},speed,callback);6、停止动画stop()

6.1作用:停止当前正在执行的动画

6.2为什么要停止动画?

如果一个以上的动画方法在同一个元素上调用,那么对这个元素来说,后面的动画将被放到效果队列中。这样就形成了动画队列。(联想:排队进站)

动画队列里面的动画不会执行,直到第一个动画执行完成。

//第一个参数表示是否清空所有的后续动画//第二个参数表示是否立即执行完当前正在执行的动画$(selector).stop(clearQueue,jumpToEnd);//常用方式$(selector).stop();解释:

当调用stop()方法后,队列里面的下一个动画将会立即开始。但是,如果参数clearQueue被设置为true,那么队列面剩余的动画就被删除了,并且永远也不会执行。

如果参数jumpToEnd被设置为true,那么当前动画会停止,但是参与动画的每一个CSS属性将被立即设置为它们的目标值。比如:slideUp()方法,那么元素会立即隐藏掉。如果存在回调函数,那么回调函数也会立即执行。

注意:如果元素动画还没有执行完,此时调用sotp()方法,那么动画将会停止。并且动画没有执行完成,那么回调函数也不会被执行。

7、jQuery节点操作

7.1动态创建元素

//$()函数的另外一个作用:动态创建元素var$spanNode=$(“我是一个span元素”);7.2添加元素(重点)

①在元素的最后一个子元素后面追加元素:append()(重点)

②作用:在被选元素内部的最后一个子元素(或内容)后面插入内容(页面中存在或者创建出来的元素都可以)

如果是页面中存在的元素,那么调用append()后,会把这个元素从原先的位置移除,然后再插入到新的位置。

如果是给多个目标追加一个元素,那么append()方法的内部会复制多份这个元素,然后追加到多个目标里面去。(最好不要这么做)

③常用参数:htmlString或者jQuery对象

//在$(selector)中追加$node$(selector).append($node);//在$(selector)中追加div元素,参数为htmlString$(selector).append('

');(了解)不常用操作:(用法跟append()方法基本一致)

//appendTo()//作用:同append(),区别是:把$(selector)追加到node中去$(selector).appendTo(node);//prepend()//作用:在元素的第一个子元素前面追加内容或节点$(selector).prepend(node);//after()//作用:在被选元素之后,作为兄弟元素插入内容或节点$(selector).after(node);//before()//作用:在被选元素之前,作为兄弟元素插入内容或节点$(selector).before(node);7.3html创建元素(推荐,重点)①作用:设置或返回所选元素的html内容(包括HTML标记)

②设置内容的时候,如果是html标记,会动态创建元素,此时作用跟js里面的innerHTML属性相同

//动态创建元素$(selector).html(‘大方啊');//获取html内容$(selector).html();7.4清空元素

//清空指定元素的所有子元素(光杆司令)//没有参数$(selector).empty();$(selector).html(“”);//“自己”把自己(包括所有内部元素)从文档中删除掉$(selector).remove();7.5复制元素

//作用:复制匹配的元素//复制$(selector)所匹配到的元素//返回值为复制的新元素$(selector).clone();【总结】:推荐使用html(“”)方法来创建元素或者html(“”)清空元素

8、操作form表单(重点)

①设置属性:

//第一个参数表示:要设置的属性名称//第二个参数表示:改属性名称对应的值$(selector).attr(“title”,“小花啊”);②获取属性:

//参数为:要获取的属性的名称,改操作会返回指定属性对应的值$(selector).attr(“title”);//此时,返回指定属性的值③移除属性:

//参数为:要移除的属性的名称$(selector).removeAttr(“title”);【注意】:checked、selected、disabled要使用.prop()方法。

prop方法通常用来影响DOM元素的动态状态,而不是改变的HTML属性。例如:input和button的disabled特性,以及checkbox的checked特性。

8.2值和内容

①val()方法:

//作用:设置或返回表单元素的值,例如:input,select,textarea的值//获取匹配元素的值,只匹配第一个元素$(selector).val();//设置所有匹配到的元素的值$(selector).val(“具体值”);②text()方法

//作用:设置或获取匹配元素的文本内容//获取操作不带参数(注意:这时候会把所有匹配到的元素内容拼接为一个字符串,不同于其他获取操作!)$(selector).text();//设置操作带参数,参数表示要设置的文本内容$(selector).text(“我是内容”);9、尺寸位置操作

9.1高度和宽度操作

①高度操作height():

//作用:设置或获取匹配元素的高度值//带参数表示设置高度$(selector).height(200);//不带参数获取高度$(selector).height();②宽度操作width():

//作用:设置或获取匹配元素的宽度值//带参数表示设置宽度//不带参数获取宽度$(selector).width(200);css()获取高度和height获取高度的区别?

A:方式一,返回值number类型,例如:30方式二,返回值string类型,例如:“30px”区别:方式一常用在参与数学计算的情况。

9.2坐标值操作

①offset()

//作用:获取或设置元素相对于文档左上角的位置//无参数表示获取,返回值为:{left:num,top:num},值是相对于document的位置$(selector).offset();//有参数表示设置,参数推荐使用数值类型$(selector).offset({left:100,top:150});注意点:设置offset后,如果元素没有定位(默认值:static),则被修改为relative

②scrollTop()

、、作用:获取或者设置元素垂直方向滚动的位置//无参数表示获取偏移$(selector).scrollTop();//有参数表示设置偏移,参数为数值类型$(selector).scrollTop(100);③scrollLeft()

//作用:获取或者设置元素水平方向滚动的位置$(selector).scrollLeft(100);对scrollTop的理解:

垂直滚动条位置是可滚动区域在可视区域上方的被隐藏区域的高度。

如果滚动条在最上方没有滚动或者当前元素没有出现滚动条,那么这个距离为0

THE END
1.jQuery添加元素jquery添加元素jQuery 是一个广泛使用的JavaScript库,它简化了HTML 文档的遍历、事件处理、动画和 AJAX 交互。在本文中,我们将探讨如何使用 jQuery 添加元素到 HTML 文档中。我们将涵盖不同的方法,包括向 DOM 添加新元素、插入现有元素之前或之后,以及使用 jQuery 创建复杂元素结构。 https://blog.csdn.net/lly202406/article/details/140115843
2.jquery怎么向一维数组中添加指定key的元素jquery 怎么向一维数组中添加指定key的元素 一、创建数组的方式: 1.定义并赋值 var str = ['java', 'php', 'c++', 'c#', 'perl', 'vb', 'html', 'css']; 2.用{}定义后赋值: var array = {};//定义一个数组 array[0] = "Tom";https://blog.51cto.com/u_16099189/12685412
3.jquery如何添加元素您可以使用 jQuery 的 append()、prepend()、after() 或 before() 方法来添加元素。append() 方法在被选元素的结尾插入内容,prepend() 方法在被选元素的开头插入内容,after() 方法在被选元素之后插入内容,before() 方法在被选元素之前插入内容 。 https://www.kdun.com/ask/127502.html
4.jQuery中动态创建添加元素的方法总结香甜薄荷jQuery中动态创建、添加元素的方法总结 这是文中一段话 //点击按钮,动态创建元素 //方法一:$()创建元素,后用append()方法添加。append() 还可以把其他地方元素添加进这个对象中。 $('#btn').click(function() { var el = $('这是一个P标签'); // $('#box').append(el)https://www.cnblogs.com/zixuan00/p/10381251.html
5.jquery可以给页面添加元素吗前端问答jquery可以给页面添加元素。添加方法:1、利用“元素对象.append("插入内容")”在元素的结尾添加元素;2、利用“元素对象.prepend("插入内容")”在元素的开头添加元素;3、利用“元素对象.after("插入内容")”在被选元素后添加元素;4、利用“元素对象.before("插入内容")”在被选元素后添加元素。 https://www.php.cn/faq/492732.html
6.jQuery添加标签元素/内容jQuery after() 和 before() 方法 jQuery after() 方法在被选元素之后插入内容。 jQuery before() 方法在被选元素之前插入内容。 $("img").after("在后面添加文本"); $("img").before("在前面添加文本"); 结果: 之前之后 通过after() 和 before() 方法添加若干新元素 fter() 和 before() 方法能够通过https://www.jianshu.com/p/2a4c6e85ed0d
7.jquery添加子元素jquery给元素添加属性的方法您好,htmlonclick事件没有绑定 使用jquery绑定 代码简洁 使用方便 事件绑定方式为追加绑定 即绑定多少个方法就执行多少个方法。 jquery里为未来元素添加事件的原理很简单,既然这个元素是未来的,那么我们可以把事件绑定在已经存在的元素上,然后在发生点击的时候,再来判断所点击的对象,是否为我们要的对象,然后再触发事件。http://chengdu.cdxwcx.cn/article/dgisgco.html
8.jquery怎么在指定元素后添加内容问答使用jQuery的after()方法可以在指定元素后添加内容。 语法如下: $(selector).after(content) 复制代码 参数说明: selector: 要插入内容的元素选择器 content: 要插入的内容,可以是 HTML 字符串、DOM 元素、DOM 元素数组或 jQuery 对象。 示例: 假设我们有一个HTML结构如下: 这是一个标题 这是一个段落 复https://www.yisu.com/ask/51253999.html
9.jQuery属性操作jQuery 效果参考手册 实例 向第一个 p 元素添加一个类: $("button").click(function(){$("p:first").addClass("intro");}); 亲自试一试 定义和用法 addClass() 方法向被选元素添加一个或多个类。 该方法不会移除已存在的 class 属性,仅仅添加一个或多个 class 属性。 https://www.w3school.com.cn/jquery/attributes_addclass.asp