jQueryDOM操作笔记
attr(name[,value]):value(任意|函数)
$('*').attr('title',function(index,previousValue){
return previousValue+' I am element '+index+' and my name is '+(this.id || 'unset');
});
也可以用传入的对象指定的属性和值来设置匹配集中所有元素相应的特性值。(参数值也可以是一个函数引用)
$('input').attr({
value:'',
title:'Please enter a value'
});
removeAttr(name):删除一个特性不会删除JavaScript DOM元素相应的属性。比如,从元素中删除readonly特性,会导致元素的readonly属性值true变为false。但属性本身不会从元素中删除。
data(name,value):将传入的值添加到为所有包装元素准备的jQuery托管数据仓库中。value(对象|函数)
data(name):通过指定的名称来获取之前在包装集的第一个元素上保存的任何数据。(如果没有,则返回undefined)
removeData()
addClass(names):如果有多个,用空格分隔。names(字符串|函数)
removeClass(names)
toggleClass(names[,switch]):如果有多个,用空格分隔。names(字符串|函数),如果switch存在且为true则添加类名,false则删除类名。
//添加斑马条纹,鼠标移入和移出切换样式
function swapThem(){
$(tr).toggleClass('striped');
}
$(function(){
$('table tr:nth-child(even)').addClass("striped");
$("table").mouseover(swapThem).mouseout(swapThem);
});
hasClass(name):返回true或false。实际上调用了is()方法,可以用is(.name)方法来代替。
css(name[,value]):value(字符串|数字|函数),也可以传入一个对象参数。(css()方法总是返回字符串)
$('<img>',{src:'images/little.bear.png',alt:'Little Bear',title:'I woof in your general direction',click:function(){alert($(this).attr('title'));}})
.css({
cursor:'pointer',
border:'1px solid black',
padding:'12px 12px 20px 12px',
backgroundColor:'white'
});
width([value])、height([value]):value(数值|字符串|函数),value如果不指定单位,默认为px ,否则要加单位。获取方法以数值形式返回值。
innerHeight()、innerWidth():不包含边框但包含内边距。
outerHeight([margin])、outerWidth([margin]):包含边框和内边距,如果margin为true,则包含外边距。
注:$(window).innerHeight()会抛出异常,而$(window).outerHeight()则返回NaN。
offset():返回包装集中第一个元素相对于文档参照源的位置(以px为单位)。可以对它应用left和top属性。
position():返回以元素的最近偏移父元素(拥有显式定位规则relative或absolute的最近祖先元素)为参照源的相对位置 (以px为单位)。
scrollLeft([value])、scrollTop([value])
html([content]):content(字符串|函数)
text([content]):尖括号(<和>)或&会被替换其相应的HTML实体字符。
append(content)、prepend(content)、before(content)、after(content)、appendTo(targets)、prependTo(targets)、insertBefore(targets)、insertAfter(targets):content(字符串|元素|jQuery|函数),targets(字符串|元素) 。
wrap(wrapper)、wrapAll(wrapper)、wrapInner(wrapper):wrapper(字符串|元素)
unwrap():删除包装元素的父元素。
注:append()、prepend()、replaceWith()、before()、after()这五个方法接受函数参数,元素的索引值将作为第一参数,该元素当前内容的HTML字符串形式作为第二参数。对于before()和after(),它们在调用时没有第二个参数。
remove(sel):从页面DOM中删除包装集中的所有元素,如何传入参数,该参数会被当成选择器,jQuery对象中只有匹配该选择器的元素才会被移除,返回结果是包装集,表示已删除的元素,所以依然可以用新包装集进行一些操作,如appendTo()、prependTo()、insertBefore()、insertAfter()等。但同时绑定到元素上的任何jQuery数据或事件也会被同时删除。如果不想删除,可以使用detach()方法。
detach(sel)
empty():删除匹配集中所有DOM元素的内容。
clone():若传入参数true,则复制事件处理器。
replaceWith(content):content(字符串|元素|函数)
replaceAll(sel)
val():返回匹配集中第一个元素的value特性。如果此元素是一个可以多选的元素时,返回值是所有选择项所组成的数组。比如<select id="list" multiple="multiple">,则表达式$('#list').val()返回包含一个或多个元素的数组。
$('[name="radioGroup"]:checked').val()
//val()只考虑包装集中的第一个元素,因此并不适用于可能选中多个控件的复选框组。可以这样
var checkboxValues=$('[name="checkboxGroup"]:checked').map(function(){return $(this).val();}).toArray();
val(value):value(字符串|函数),设置传入的值为所有匹配的表单元素的value。
$('input').bind('blur', function() {
$(this).val(function( i, val ) {
return val.toUpperCase();
});
}); //失去焦点后,input中的文本变为大写
val()的一个变体可以用来选中复选框或者单选按钮元素,或者选择<select>元素中的可选项。
$('input,select').val(['one','two','three']);
//这个语句会搜索页面上所有的<input>和<select>元素,只要这些元素的值与输入字符串'one'、'two'和'three'
//任何一个相匹配。任何匹配的复选框或者单选按钮都会变成选中状态,而任何匹配的可选项将会变为选择状态。
//也可以通过attr('selected',true); 和 attr('checked',selected); 来选中
代码片段集
//list1
//以数组的形式返回特定元素的类名列表
$('p:first').attr('className').split(' '); //如果特性不存在,attr()方法会返回undefined,因此p没有类名就会抛出错误
//可以通过检查特性是否存在来解决这个问题
$.fn.getClassNames=function(){
var name=this.attr('className');
if(name!=null){
return name.split(' ');
}else{
return [];
}
}; //之后就可以用getClassNames()方法来获取由类名组成的数组了。
//list2
//文本框提示文本自动显示与隐藏
$('#address').focus(function(){
var txt_value=$(this).val();
if(txt_value==this.defaultValue){ //this.defaultValue就是当前文本框的默认值
$(this).val('');
}
});
$('#address').blur(function(){
var txt_value=$(this).val();
if(txt_value==''){
$(this).val(this.defaultValue);
}
});
jQueryDOM操作笔记的更多相关文章
- Centos7系统下修改主机名操作笔记
习惯了在Centos6系统下修改主机名的操作,但是Centos7下修改主机名的操作却大不相同!操作笔记如下: 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient) ...
- C语言 字符串操作 笔记
/* C语言字符串的操作笔记 使用代码和注释结合方式记录 */ # include <stdio.h> # include <string.h> int main(void) ...
- Oracle 日常应用和操作笔记
简单整理oracle日常应用笔记. 1.采用excel表格中的数据直接粘贴数据库记录中,默认会在后面加一个空格“”,操作完成后一定要记得对空格匹配然后修改一下. 2.查询数据库里的所有表结构, 采用s ...
- MongoDb的副本集搭建教程(个人操作笔记)
很多公司都在用MongoDb ,一直没有时间研究,最近好好的整了一下,做下笔记,直接上操作步骤,关于Mongodb的理论知识可以搜索其他资料,也可以联系我索取 mongoDB官方已经不建议使用主从模式 ...
- LINUX上安装JDK+tomcat+mysql操作笔记
1.环境准备: 1-1.centos 64位(本人的虚拟机安装此系统),安装步骤和网络配置已经在前两篇记录. 1-2.JDK 版本1.8 1-3.tomcat压缩包 1-4.CRT远程连接工具(可用其 ...
- git常用操作笔记
这是我看了廖雪峰的git教程,写的笔记,仅作为一个学习的记录 一.大多数我们面临的是已经有一个进行中的项目了,我们只需克隆下来就可以了 1.安装git,安装完后,可输入git,回车,查看是否已安装 2 ...
- 关于pgsql 的json 和jsonb 的数据查询操作笔记整理
关于pgsql 的json 和jsonb 的数据处理笔记 1. json 和jsonb 区别两者从用户操作的角度来说没有区别,区别主要是存储和读取的系统处理(预处理)和耗时方面有区别.json写入快, ...
- 离线版centos8环境部署迁移监控操作笔记
嗨咯,前两天总结记录了离线版centos8下docker的部署笔记,今天正好是2021年的最后一天,今天正好坐在本次出差回家的列车上,车上没有上面事做,索性不如把本次离线版centos8环境安装的其他 ...
- MySQL 子查询与连接操作笔记
SQL语句之间是可以进行连接操作的,在一些复杂的数据操作中必须用到连接操作.简单的说就是一个SQL语句的结果可以作为相连接的SQL操作的一部分.SQL结构化查询语句,子查询是指的所有的SQL操作,并非 ...
随机推荐
- javascript date picker
一个简洁的date picker <html><head><meta http-equiv="Content-Type" content=" ...
- SpringMVC学习笔记(一)
一.MVC的流程图 分析流程图 1. 首先用户发送请求---->前端控制器,前端控制器根据请求信息(如URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分:图 ...
- 怎么部署java项目(从搭建环境说起)
1.服务器需要安装对应开发版本的jdk 在官网下载jdk对应的jdk版本,解压到某个目录下如: root@guchen-ubuntu16-04lts:/home/guchen/usr/java# ls ...
- 如何使用SQLPLUS分析SQL语句(查询执行计划跟踪)
方法一:autotrace 1, connect sys/密码 as sysdba,在sys用户下运行$ORACLE_HOME/sqlplus/admin/plustrce.sql这段sql的实际内 ...
- Java中的自增问题(i=i++)
也许我这是在较真, 但是我们确实有时候就不小心就错写为这种情况了. 看如下代码: public class Test{ public static void main(String[] args){ ...
- QML引擎的演进,第一部分
原文链接:Lars Knoll – Evolution of the QML engine, part 1 QML作为一项技术对于Qt的成功变得越来越重要.它允许创建流畅的动画界面,与现今的市场预期相 ...
- 邮件中继成畅邮标配 U-Mail为何领先
中国力推“一带一路”战略,为首成立“亚投行”,越来越多的中国企业酝酿走出去.在企业间的商务往来中,电子邮件将扮演着重要角色,但是因为要跨洋 过海,各国互联网环境和法律法规有所区别,面临着种种变数,对方 ...
- 设置centos7默认运行级别
1.查看当前运行级别 systemctl get-default 2.设置命令行运行级别 systemctl set-default multi-user.target 3.设置图形化运行级别 sys ...
- 从西直门立交桥谈IT架构与重构(干货)
2015年8月13日 PM 20:00 Neeke君从一个战场奔赴至另一个战场,回到办公室,打开电脑,登陆微信,精彩的的微社群分享马上就要开始了! 大家好,我是Neeke,中文名高驰涛,PHP开发组成 ...
- pooling的原理与Python实现
本文首先阐述pooling所对应的操作,然后分析pooling背后蕴含的一些道理,最后给出pooling的Python实现. 一.pooling所对应的操作 首先从整体上对pooling有一个直观的概 ...