DOM操作

1、在div1内部最后追加一个节点

$("#div1").append("<img src='../01-HTML基本标签/img/Male.gif'/>");

2、将一个节点插入到div1的内部最后

 $("<img src='../01-HTML基本标签/img/Female.gif'/>").appendTo("#div1")

3、在div1内部前面追加一个节点

$("#div1").prepend("<img src='../01-HTML基本标签/img/Male.gif'/>");

4、将一个节点插入到div1的内部最前面

$("<img src='../01-HTML基本标签/img/Female.gif'/>").prependTo("#div1");

5、在div1外部前面插入一个节点

$("#div2").before("<p>一个P标签</p>");
$("<p>标签</p>").insertBefore("#div2");

6、将一个节点插入到div1的外部最前面

$("#div2").after("<p>一个P标签</p>");
$("<p>标签</p>").insertAfter("#div2");

7、为每一个选中的节点都套一层父节点

$("div").wrap("<section></section>");

8、将选中的所有节点包裹在同一个父节点中

$("div ~ p").wrapAll("<section></section>");

9、删除选中节点的父节点

$("div p").unwrap();

10、将选中节点中的所有元素,包裹在一个新的父节点中
     新的节点是当前元素的唯一子节点

$("#div1").wrapInner("<div></div>");

11、将所有选中节点替换成新的节点

$("div p").replaceWith("<span>12</span>");
$("<span>12</span>").replaceAll("div p");

12、清空当前节点中的所有内容,但会保留当前节点标签

$("#div1").empty();

13、删除当前节点以及该节点的所有子节点

$("#div1").remove();
$("#div1").detach();

[remove 和 detach的区别]
      使用remove删除的节点,恢复以后,将不再保留节点所绑定的事件
      使用detach删除的节点,恢复以后,可以保留节点所绑定的事件

14、 [JS 中cloneNode() 与JQ中 clone() 的区别]
  ① cloneNode() 传入false 或 不传,不能可隆子节点
                           传入true ,可以克隆子节点
  ② clone() 无论传入true 或 false 或 不传 ,都会克隆当前节点及其子节点
                    但是,只有传入true,才可以克隆当前节点所绑定的事件,否则不可隆事件
                    第二个参数传入true 或 false 表示是否克隆子节点

$("#div1").click(function(){
alert("我是div1");
});
$("#div1").clone(false,).insertBefore("button:eq(0)");
属性和CSS样式操作

1、设置节点属性

$("#div1").attr("class","cls1");

2、传入对象,以键值对的形式同时设置多个属性

$("#div1").attr({
"class":"cls",
"name":"name1",
"font-size":"24px"
});

3、删除节点属性

console.log($("#div1").attr("id"));

prop 和 attr一样,都可以对节点属性进行读取和设置。
【两者的不同】
在读取属性=“属性值”时,attr返回的是 属性值 或 undefined;
prop返回的是true / false

console.log($("#div1").attr("disabled"));
console.log($("input").prop("checked"));

4、>>> 在原有class基础上新增一个class名字

console.log($("#div1").addClass("cla"));

>>> 删除指定的class名称,其余的class名依然保留

console.log($("#div1").removeClass("cls cla"));

>>> 切换class, 如果有指定class就删除,如果没有就新增

$("button:eq(0)").click(function(){
$("#div1").toggleClass("div1")
});

5、.html() 取到或设置节点中的html代码
  .text() 取到或设置节点中的文本
  .val() 取到或设置表单中的value值

$("#div1").html("<span>123</span>");
$("#div1").text("<p>567</p>");
$("input:eq(0)").val("<p>值</p>");

6、>>>css() 给节点添加css样式,属于行级样式表权限

$("#div1").css("color","goldenrod");

>>>同时给一个节点添加多个css样式

 $("#div1").mousedown(function(){
 "class" : "clc",
 "color" : "goldenrod",
 //    "font-size" : "24px" 

 // 通过回调函数设置样式
 "font-size":function(index,value){
 var n=parseInt(value)+1;
 return n+"px";
 }
 });

7、>>>取到或者设置节点的宽、高

$("#div1").width(400);
$("#div1").width("400px");

>>> 取到节点的宽、高+padding。不含 border和margin

console.log( $("#div1").innerWidth());
console.log( $("#div1").innerHeight());

>>>不传参数表示:宽高+padding+border
     >>>传入true表示:宽高+padding+border+margin

console.log( $("#div1").outerWidth());
console.log( $("#div1").outerHeight(true));

8、返回一个节点,相对于浏览器的左上角的偏移量
* 返回一个对象{top:20,left:20}
*/

console.log( $("#div1").offset());

9、返回一个节点,相对于父容器的偏移量。
注意:
① 使用此方法,要求父元素必须是定位元素。如果父元素不是定位元素,
则依然是相对于浏览器左上角进行测量
② 此方法,测量偏移量时,将不考虑margin。而会将margin视为当前容器的一部分。

console.log( $("#div1").position());

10、设置或取到指定节点的滚动条的位置

console.log( $("#div1").scrollTop(200).scrollTop());
其他函数

1、each() 用于遍历JQuery中的对象数组。
在回调函数中,return true; 相当于continue;
return false;相当于break;

$("#ul1 li").each(function(index,item){
if(index%2!=0){
return true;
}
console.log(index);
console.log($(item).text());

在回调函数中,this指向调用当前函数的节点对象
this,item是JS对象,在JQuery使用时要用 $ 包裹

console.log($(this)); //console.log(item);
$(this).text($(this).text()+"aaa");

2、 .size() .length 返回所查询的数组中元素的个数

console.log($("#ul1 li").size());

3、 .get() 将JQuery对象转成JS对象,传入index表示取出第几个,并转成JS对象
         不传参数,表示将数组中的所有元素转为JS对象

console.log($("#ul1 li").get(0));

4、对传入的数组或对象进行遍历。可以是JQuery对象数组,也可以是JS数组或对象【常用】

var arr=[1,2,3,4];
var obj={
name:"zhangsan",
age:24,
sex:"nan"
};
$.each($("li"), function(index,item) {
console.log(index+"----"+item);
console.log(item)
});

5、 数组映射

var newArr=$.map(arr, function(item,index) {
return item+5;
});
console.log(newArr);

6、$.inArray():检测一个值是否在数组中,返回下标。如果没有找到返回-1.
第三个参数表示查找的起始下标。

var arr = [1,2,3,4];
var is=$.inArray(2,arr,2);//相当于 arr.indexOf(2,2);

7、将选中的JQuery DOM集合,恢复成数组。数组的每一个元素是JS对象

console.log($("#ul1 li").toArray());

8、merge:合并两个数组

var arr=$.merge([1,2,3],[4,5,6]);
console.log(arr);

9、将一个JSON字符串转换成JSON对象

var str='{"1":"zhan","2":"wanggang","3":"lizhn"}';
console.log(str);
console.log($.parseJSON(str));

10、检测一个节点,是否包含另一个节点
接收两个JS对象,第一个是父对象,第二个是子对象

console.log($.contains($("#ul1")[0],$("#li")[0]));

11、hasClass() 检测一个节点是否有指定的 class名

console.log($("#ul1").hasClass("clas"));

12、 [各种检测函数]
$.contains(c,c)
$.type(obj)
$.isarray(obj)$.isFunction(obj)
$.isEmptyObject(obj)
$.isPlainObject(obj)
$.isWindow(obj)
$.isNumeric(value)1.7+

JQuery DOM操作 、属性和CSS样式操作、其他函数的更多相关文章

  1. jQuery修改class属性和CSS样式

    jQuery修改class属性和CSS样式 class属性修改 类属性即class属性,规定类名. 用类选择器规定样式的时候,需要为元素指定类名,即class属性的值. 注意每个HTML元素只有一个c ...

  2. try.jquery-5-styling里的各种css样式操作

    你好,这里是我的http://try.jquery.com/学习笔记: 这次来学习操作各种css. 主要对这段html元素进行操作. <div id="all-tours"& ...

  3. js css样式操作代码(批量操作)

    js css样式操作代码(批量操作) 作者: 字体:[增加 减小] 类型:转载 时间:2009-10-09   用js控制css样式,能让网页达到良好的的用户体验甚至是动画的效果.并且考虑到效率.   ...

  4. python 之 前端开发( jQuery选择器、筛选器、样式操作、文本操作、属性操作、文档操作)

    11.5 jQuery 引入方式: 方式一:本地引入 <script src="jquery-3.3.1.min.js"></script> <scr ...

  5. 转:jquery操作元素的css样式(获取、修改等等)

    //1.获取和设置样式 $("#tow").attr("class")获取ID为tow的class属性 $("#two").attr(&qu ...

  6. 使用jquery操作元素的css样式(获取、修改等等)

    //1.获取和设置样式 $("#tow").attr("class")获取ID为tow的class属性 $("#two").attr(&qu ...

  7. jQuery 源码解析(二十七) 样式操作模块 坐标详解

    样式操作模块可用于管理DOM元素的样式.坐标和尺寸,本节讲解一下坐标这一块. 对于坐标来说,jQuery提供了一个offset方法用于获取第一个匹配元素的坐标或者设置所有匹配元素的坐标,还有offse ...

  8. 获取jQuery对象的第N个DOM元素 && table常用css样式

    获取jQuery对象的第N个DOM元素 1.$(selector).get(N-1) 2.$(selector)[N-1] 注意:.index()方法返回的是一个数,相当于C#中的IndexOf() ...

  9. javascript操作元素的css样式

    我们经常要使用Javascript来改变页面元素的样式.当中一种办法是改变页面元素的CSS类(Class),这在传统的Javascript里,我们一般是通过处理HTML Dom的classname特性 ...

随机推荐

  1. An universal algorithm design of fixed length substring locating

         An universal algorithm design of fixed length substring locating Stringlocating is a very commo ...

  2. UNIX环境高级编程——select、poll和epoll

    一.select select目前几乎在所有的平台上支持,其良好跨平台支持也是它的一个优点,事实上从现在看来,这也是它所剩不多的优点之一. select的一个缺点在于单个进程能够监视的文件描述符的数量 ...

  3. μC/OS-II与RT-Thread对比——任务调度

           在任务调度器的实现上,μC/OS-II和RT-Thread都采用了位图调度(bitmap scheduling),任务优先级的值越小则代表具有越高的优先级,主要区别在于实现形式,是采用多 ...

  4. 9.3、Libgdx手势检测

    (官网:www.libgdx.cn) 触摸屏在输入的基础上增加了手势检测,比如两个手指实现缩放,单击或双击屏幕,长按屏幕等. Libgdx提供了GestureDetector来帮助你检测以下手势: t ...

  5. How to create DB2 user function easily by DB Query Analyzer 6.03

    How to create DB2user function easily by DB Query Analyzer 6.03 Ma Genfeng (Guangdong Unitoll Servic ...

  6. Android高效率编码-第三方SDK详解系列(三)——JPush推送牵扯出来的江湖恩怨,XMPP实现推送,自定义客户端推送

    Android高效率编码-第三方SDK详解系列(三)--JPush推送牵扯出来的江湖恩怨,XMPP实现推送,自定义客户端推送 很久没有更新第三方SDK这个系列了,所以更新一下这几天工作中使用到的推送, ...

  7. XBMC源代码分析 1:整体结构以及编译方法

    XBMC(全称是XBOX Media Center)是一个开源的媒体中心软件.XBMC最初为Xbox而开发,可以运行在Linux.OSX.Windows.Android4.0系统.我自己下载了一个然后 ...

  8. Mahout决策森林

    Mahout决策森林算法 一.决策树 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法 ...

  9. 中国象棋游戏Chess(1) - 棋盘绘制以及棋子的绘制

    本项目都使用QT来实现绘图,没有任何第三方的资源. 工程详情:Github 首先将棋盘设计为一个类Board // Board.h // Board类实现了棋盘的绘制以及显示 // #ifndef B ...

  10. eclipse开发安卓时logcat的绿色加号不见了

    那个绿色加好的作用是添加过滤器的,如果不见了说明你不小心点到了一个按键.恢复方法: 点一下清空logcat日志信息,(右边那个按键)就好了!