【Jquery系列】之DOM属性
1 概述
本章将结合JQuery官方API,对Jquery属性进行分析与讲解。主要讲.addClass(),.attr(),,hasClass(),,html(),.prop(),.removeAtrr(),.removeClass(),.removeProp(),.toggleClass(),.val() 。
2 DOM属性
2.1 .addClass()
为指定元素添加样式。
(1)addClass(string className)
为制定的样式添加一个或多个样式名
a.为指定元素添加一个样式名
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- $("#div_id").addClass("div_class");
- })
- })
- </script>
- </head>
- <body>
- <div id="div_id">为id="div_id"的div添加单个类名:div_class</div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
b.为多个元素添加多个样式名
注:多个类名之间由空格隔开
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- $("#div_id").addClass("div_class div_class1 div_class2 div_class3");
- })
- })
- </script>
- </head>
- <body>
- <div id="div_id">为id="div_id"的div添加单个类名:div_class</div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
(2)addClass(function(index){})
注:index为匹配元素的索引位置
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- $("ul li").addClass(function (index) {
- return "li-" + index;
- })
- })
- })
- </script>
- </head>
- <body>
- <ul>
- <li></li>
- <li></li>
- <li></li>
- <li></li>
- </ul>
- <input id="btnJquery" type="button" value="Jquery"/>
- </body>
- </html>
测试结果:
2.2 .attr()
获取匹配元素集合中的第一个元素的属性值或设置每一个匹配元素的一个或多个属性。
(1)attr(string attributeName)
获取匹配的元素集合中的第一个元素的属性值
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- var attrText = $("#div_idFirst").attr("id")
- $("#div_idSecond").text(attrText);
- })
- })
- </script>
- </head>
- <body>
- <div id="div_idFirst">第一个div</div>
- <div id="div_idSecond"></div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
(2)attr(string attributeName,string value)
设置单个属性名和属性值
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- //var attrText = $("#div_idFirst").attr("id")
- $("#div_idSecond").attr("class","div_classSecond");
- })
- })
- </script>
- </head>
- <body>
- <div id="div_idFirst">第一个div</div>
- <div id="div_idSecond"></div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
(3)attr(PlainObject attributes)
设置多个属性和属性值,以 属性-值 格式
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- //var attrText = $("#div_idFirst").attr("id")
- $("#div_idSecond").attr({
- "class": "div_classSecond",
- "title":"divSecond"
- });
- })
- })
- </script>
- </head>
- <body>
- <div id="div_idFirst">第一个div</div>
- <div id="div_idSecond"></div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
(4)attr(string attributeName,function(index,attr))
通过函数的形式,设置属性和属性值
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- $("img").attr("src",function () {
- return "Images/" + this.title;
- });
- })
- })
- </script>
- </head>
- <body>
- <img src="~/BlogImgs/Jquery.png" title="Jquery"/>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
2.3 .hasClass()
确定任何一个匹配元素是否有被分配给定的类样式,元素可能会有个的样式名。在 HTML 中,使用空格来分隔多个样式:
(1)hasClass(string className)
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- var div1=$("#div_first").hasClass("div1");
- var div2 = $("#div_second").hasClass("div1");
- })
- })
- </script>
- </head>
- <body>
- <div id="div_first" class="div1">The first div is:</div>
- <div id="div_second" class="div2">The second div is:</div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
2.4 .prop()
prop表示特性,attr().表示属性,比较简单,略过。
2.5 .removeAtrr()
略过
2.6 .removeClass()
略过
2.7 . removeProp()
略过
2.8 .toggleClass()
在匹配的元素集合中的每个元素上添加或删除一个或多个样式类,取决于这个样式类是否存在或值切换属性。即:如果存在(不存在)就删除(添加)一个类。
(1)toggleClass(string className)
在匹配的元素集合中的每个元素上用来切换的一个或多个(用空格隔开)样式类名。如果在匹配的元素集合中的每个元素上存在该样式类就会被移除;如果某个元素没有这个样式类就会加上这个样式类
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- $("div").toggleClass("idDiv2");
- })
- })
- </script>
- </head>
- <body>
- <div class="idDiv1"></div>
- <div class="idDiv1 idDiv2"></div>
- <div class="idDiv1 idDiv2 idDiv3"></div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
如下会在原本样式与设置样式来回切换
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- $("div").toggleClass("idDiv2 div4");
- })
- })
- </script>
- </head>
- <body>
- <div class="idDiv1"></div>
- <div class="idDiv1 idDiv2"></div>
- <div class="idDiv1 idDiv2 idDiv3"></div>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
(2)toggleClass(string className,Boolean switch)
className在匹配的元素集合中的每个元素上用来切换的一个或多个(用空格隔开)样式类名;switch,一个布尔值,用于判断样式是否应该被添加或移除。
(3)toggleClass(index,calss ,switch)
2.9 .val()
获取匹配的元素集合中第一个元素的当前值或设置匹配元素集合中的每个元素的值
(1)val()
获取匹配的元素集合中第一个元素的当前值,.val()
方法主要用于获取表单元素的值,比如 input
, select
和 textarea
。对于 <select multiple="multiple">
元素, .val()
方法返回一个包含每个选择项的数组,如果没有选择性被选中,它返回null。
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- var valInput= $("#idInput").val();
- var valSelect= $("#idSelect").val();
- })
- })
- </script>
- </head>
- <body>
- <input type="text" id="idInput"/>
- <select id="idSelect">
- <option>opt1</option>
- <option>opt2</option>
- <option>opt3</option>
- </select>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
(2)val(string value)或val(Array value)
为指定元素设置值
- <!DOCTYPE html>
- <html>
- <head>
- <style>
- button { margin:4px; cursor:pointer; }
- input { margin:4px; color:blue; }
- </style>
- <script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>
- </head>
- <body>
- <div>
- <button>Feed</button>
- <button>the</button>
- <button>Input</button>
- </div>
- <input type="text" value="click a button" />
- <script>
- $("button").click(function () {
- var text = $(this).text();
- $("input").val(text);
- });
- </script>
- </body>
- </html>
测试结果:
(3)val(function(index,value))
此方法通常用于设置表单字段的值,index表示当前元素的索引,value表示当前元素的值
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <script src="~/Scripts/jquery-1.10.2.js"></script>
- <title>JQuery函数</title>
- <script>
- $(document).ready(function () {
- $("#btnJquery").click(function () {
- var valInput = $("#idInput").val(function (index,value) {
- return value.toUpperCase().toString();
- })
- })
- })
- </script>
- </head>
- <body>
- <input type="text" id="idInput"/>
- <input id="btnJquery" type="button" value="Jquery" />
- </body>
- </html>
测试结果:
3 参考文献
【01】http://www.jquery123.com/category/attributes/
【02】http://api.jqueryui.com
4 版权
- 感谢您的阅读,若有不足之处,欢迎指教,共同学习、共同进步。
- 博主网址:http://www.cnblogs.com/wangjiming/。
- 极少部分文章利用读书、参考、引用、抄袭、复制和粘贴等多种方式整合而成的,大部分为原创。
- 如您喜欢,麻烦推荐一下;如您有新想法,欢迎提出,邮箱:2016177728@qq.com。
- 可以转载该博客,但必须著名博客来源。
【Jquery系列】之DOM属性的更多相关文章
- jQuery系列:DOM操作
1. 访问元素 在访问页面时,需要与页面中的元素进行交互式的操作.在操作中,元素的访问主要包括对元素属性.内容.值.CSS的操作. 1.1 元素属性操作 1.1.1 设置或返回被选元素的属性值 语法格 ...
- attr prop jquery关于获取DOM属性值的两个函数
$('#domid').attr('acitve') $('#domid').prop('checked') // 在使用JQUERY获取DOM元素的属性时,有两个函数,attr 和 prop < ...
- 使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第1个DOM元素,此时返回的是DOM对象,然后调用DOM属性innerHTML,读取该元素 包含的文本信息
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 第一百六十六节,jQuery,基础 DOM 和 CSS 操作,元素内容,元素属性,css和class,元素宽度高度、偏移、滚动条
jQuery,基础 DOM 和 CSS 操作,元素内容,元素属性,css和class,元素宽度高度.偏移.滚动条 学习要点: 1.DOM 简介 2.设置元素及内容 3.元素属性操作 4.元素样式操作 ...
- jQuery 源码分析(十三) 数据操作模块 DOM属性 详解
jQuery的属性操作模块总共有4个部分,本篇说一下第2个部分:DOM属性部分,用于修改DOM元素的属性的(属性和特性是不一样的,一般将property翻译为属性,attribute翻译为特性) DO ...
- jQuery系列(四):jQuery的属性操作
jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作 html属性操作:是对html文档中的属性进行读取,设置和移除操作.比如attr().removeAttr ...
- jQuery属性操作之DOM属性操作
DOM属性操作是对DOM元素的属性进行读取.设置和移除操作, 比如prop(). removeProp(). 1. prop() 1.1 使用prop()获取返回值 prop() 用于返回属性值时, ...
- Jquery操作的是内存数据,H5 dataset操作的是dom属性
Jquery操作的是内存数据,H5操作的是dom属性
- 使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
查看本章节 查看作业目录 需求说明: 使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距.使用jQuery ...
随机推荐
- python密码错误三次锁定
程序需求: 输入用户名,密码 认证成功显示欢迎信息 输入错误三次后锁定用户 流程图: 好像画的不咋地 #!/usr/bin/env python # _*_ coding:utf-8 _*_ # Fi ...
- python定时利用QQ邮件发送天气预报
大致介绍 好久没有写博客了,正好今天有时间把前几天写的利用python定时发送QQ邮件记录一下 1.首先利用request库去请求数据,天气预报使用的是和风天气的API(www.heweather.c ...
- MarkdownPad2使用高亮插件
MarkdownPad 2有插入代码块的功能,但样式却不尽人意,但又不想换个编辑器,找了挺多相关资料,最后在MarkdownPad 2集成prettify高亮插件. 如下相关资料: [HTML] Pr ...
- tornado之Hello world
#!/usr/bin/env python26 #-*- coding:utf8 -*- import tornado.httpserver import tornado.ioloop import ...
- javascript第七章--DOM
① 节点层次 ② DOM操作技术
- jq 时间计算
-(function($){ var caculation = function(gap){ var minutes = 1000 * 60 var hours = minutes * 60 var ...
- 【Java入门提高篇】Day3 抽象类与接口的比较
抽象类跟接口都讲完了,现在来做一个比较. 其实说实话,没有多大的可比较性,它们是完全不同的两个东西,它们的抽象不在同一个层级上.但是为了让大家更好的理解,还是做一个比较吧,毕竟它们都很抽象(233). ...
- lua luaconf解读
定义了一些跟平台相关的宏,明确指出一些不推荐使用的函数,如lua_cpcall.lua_strlen
- Tinc VPN
服务端配置 安装 $ apt-get install tinc 配置 $ mkdir -p /etc/tinc/dock/hosts $ cd /etc/tinc/dock 配置 tinc.conf ...
- Nginx的知识分享,继续上次的分享
5. Nginx配置文件精讲二 #这里为后端服务器wugk应用集群配置,根据后端实际情况修改即可,tdt_wugk为负载均衡名称,可以任意指定 #但必须跟vhosts.conf虚拟主机的pass段一致 ...