jQuery_02之元素操作及事件绑定
1、操作元素之属性:
①attr读:$(“selector”).attr(“属性名”);=>getAttribute(“属性名”);改:$(“selector”).attr(“属性名”,值);=>setAttribute(“属性名”,值);*(*无法访问不再开始标签中存在的prop属性;例:checked,selected,disabled);
②prop读:$(“selector”).prop(“属性名”);=>elem.属性名;改:$(“selector”).prop(“属性名”,值);
③移除属性:$(“selector”).removeAttr(“属性名”);=>removeAttribute(“属性名”);
2、操作元素之内容:
①html原文:读:$(“selector”).html();=>elem.innerHTML;改:$(“selector”).html(“html片段”);=>elem.innerHTML=”html片段”;清空元素:$(“selector”).empty();=>elem.innerHTML=””;
②纯文本:读:$(“selector”).text();=>elem.textContent/innerText;改:$(“selector”).text(“文本”);
③表单元素的value:读:$(“selector”).val();改:$(“selector”).val(值);
3、操作元素之样式:
①直接操作CSS属性:$(“selector”).css(“CSS属性名”);=>getComputedStyle();$(“selector”).css(“CSS属性名”,值);=>elem.style.CSS属性名=值;同时修改多个属性值:$(“selector”).css({属性名1:值1,属性名2:值2,……});*(css()能读取所有属性,但只能修改内联样式,属性名须去横线化驼峰);
②修改class属性:a、完整修改:$(“selector”).attr(“class”,”类名”);b、追加:$(“selector”).addClass(“类名”);c、移除:$(“selector”).removeClass(“类名”);d、清除:$(“selector”).attr(“class”,””);或者$(“selector”).removeClass();e、判断是否包含:$(“selector”).hasClass(“类名”);f、在有或没有指定类名之间切换:$(“selector”).toggleClass(”类名“);
4、遍历节点:
①获得父元素:$(“selector”).parent();=>elem.parentNode;或elem.parentElement;
②获得兄弟元素:下一个兄弟$(“selector”).next([selector]);=>elem.nextElementSibling;前一个兄弟:$(“selector”).prev([selector]);=>elem.previousElementSibling;其他兄弟:$(“selector”).siblings([selector]);
③子元素:直接子元素:$(“selector”).children([selector]);所有子代元素:$(“selector”).find(selector);*(find()必须加selector);
5、添加:
①创建节点:var $elem=$(“完整html元素代码段”);
②添加:追加到parent下所有子节点末尾:$(parent).append($elem);作为parent的第一个子节点插入:$(parent).prepend($elem);插入到child之后:$(child).after($elem);插入到child之前: $(child).before($elem);
6、其它操作:
①删除:$(要删除的元素).remove();
②替换:$(old).replaceWith(新元素);或$(新元素).replaceAll(old);
③复制:var $clone=$(“selector”).clone([true]);*(true:为深度克隆包括事件处理函数);
7、事件绑定之bind:
①$(…).bind(“事件名”,fn)=>addEventListener;为同一元素的事件处理函数绑定多个函数对象;
②$(…).unbind(“事件名”,fn)=>removeEventListener;如果有可能移除事件处理函数,则绑定时必须用实名函数绑定,不能用匿名函数;重载:a、不带任何参数:移除元素上所有事件处理函数绑定;b、只带一个事件名称参数:移除元素上指定事件名称绑定的所有函数对象;c、带两个参数:仅移除事件元素上指定事件名称绑定的执行的函数对象;
8、事件绑定之delegate:
①事件代理:让指定父元素下所有符合要求的子元素都能使用事件处理函数(包括生成);原理:利用事件冒泡:a、仅将事件处理函数绑定在父元素;b、获得目标元素:e.target;c、仅响应符合条件的元素的事件;
②事件代理使用:将事件绑定到parent上(利用冒泡),只有符合selector条件的元素才能响应事件;$(parent).delegate(“selector”,“事件名”,function(e){e.target});移除绑定:$(parent).undelegate(“selector”,”事件名”,function(e){e.target});
9、其它绑定:
①一次性事件:$(…).one(“事件名”,fn);只能执行一次事件处理函数,执行后自动解除;
②将元素所有事件绑定到document:$(…).live(“事件名”,fn);$(…).die(“事件名”,fn);
③仅为一个元素绑定事件处理函数:$(“target”).on(“事件名”,fn);
④利用冒泡:$(“parent”).on(“事件名”,“selector”,fn);解除绑定off;
jQuery_02之元素操作及事件绑定的更多相关文章
- jQuery之元素操作及事件绑定
1.操作元素之属性: ①attr读:("selector").attr("属性名"):=>getAttribute("属性名"):改: ...
- jQuery学习笔记之DOM操作、事件绑定(2)
jQuery学习笔记之DOM操作.事件绑定(2) --------------------学习目录------------------------ 4.DOM操作 5.事件绑定 源码地址: https ...
- vue样式操作与事件绑定
Vue笔记 1 Vue实例 (VM) var vm = new Vue({ el:'#app', //挂载元素 //数据 data: { title:'值', ...
- jquery的链式操作以及事件绑定
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JQ动态生成的元素,原事件绑定失效
Old Code: $('code').click(function () { console.log($(this).text()); }); New Code:(.container 是<c ...
- jQuery中事件绑定到bind、live、delegate、on方法的探究
1. 给页面上的某个元素绑定事件,最初采用下面的方式实现: $(‘selector’).click(function(){ //code }); 缺点: 不能同时绑定多个事件,不能绑定动态的元素. 后 ...
- jq事件绑定
有些时候我们在页面中会动态的添加一下dom结构,当我们想要给这些结点添加事件时需要在此节点绑定一系列的操作. <a href="#" onclick="addBtn ...
- jQuery中是事件绑定方式--on、bind、live、delegate
概述:jQuery是我们最常用的js库,对于事件的绑定也是有很多种,on.one.live.bind.delegate等等,接下来我们逐一来进行讲解. 本片文章中事件所带的为版本号,例:v1.7+为1 ...
- 原生JS事件绑定方法以及jQuery绑定事件方法bind、live、on、delegate的区别
一.原生JS事件绑定方法: 1.通过HTML属性进行事件处理函数的绑定如: <a href="#" onclick="f()"> 2.通过JavaS ...
随机推荐
- Android广播大全
1.String ADD_SHORTCUT_ACTION 动作:在系统中添加一个快捷方式. 2.String ALL_APPS_ACTION 动作:列举所有可用的应用.输入:无. 3.String A ...
- nodejs之异步思想
nodejs的精髓就是"异步",但什么是异步呢?我们来看一个例子: var start =new Date; setTimeout(function(){ var end =new ...
- testlink简单部署
CentOS+LAMP+testlink 环境 系统 CentOS6.5 软件 testlink-1.9.14 IP 192.168.0.158 部署 LAMP环境搭建 remi配置 wget htt ...
- Java:switch语句例子
1.输入一个名次,第1-4名,分别称为冠军.亚军.季军.殿军,5名及5名以上,称为其他名次. import java.util.Scanner; public class switch1 { publ ...
- 算法入门笔记------------Day2
1.开灯问题 有n盏灯,编号为1-n,第一个人把所有灯打开,第二个按下所有编号为2的倍数的开关(这些灯都被关掉),第三个人按下所有编号为3的倍数的开关,依次类推,一共有k个人,问最后有哪些灯开着?输入 ...
- React Native填坑之旅--与Native通信之iOS篇
终于开始新一篇的填坑之旅了.RN厉害的一个地方就是RN可以和Native组件通信.这个Native组件包括native的库和自定义视图,我们今天主要设计的内容是native库方面的只是.自定义视图的使 ...
- HP iLo2 试用序列号
HP iLo2 试用序列号 2 条回复 32Q8W-GKHTR-NPDKY-5CD79-T525H hp的ilo2功能实在太有用了,不用往那个恶劣的机房跑了,系统重装也直接远程完成. 这个试用序列号用 ...
- H3C qos 简单配置
qos 有三种服务模型 Best-Effort service(尽力而为服务模型) Integrated service(综合服务模型,简称Int-Serv) Differentiated servi ...
- c1ctf2016 wp
web: 1.web萌新福利 没啥好说的,右键查看源码得key 2.you are not admin 一看题目,就想到http头修改,常见的x-forwarded-for,referer,host, ...
- 【整理】--【字符设备】cdev_init()/cdev_alloc(),cdev_add(),cdev_del()
(1) 内核中每个字符设备都对应一个 cdev结构的变量,下面是它的定义: linux-2.6.22/include/linux/cdev.h struct cdev { struct kobject ...