JQuery样式与属性设置方法分析


Posted in jQuery onDecember 07, 2019

本文实例讲述了JQuery样式与属性设置方法。分享给大家供大家参考,具体如下:

Jquery属性的获取与设置

//找到第一个input,通过attr设置属性value的值
$("input:first").attr('value','新设值');
//同时为多个属性赋值
$("input:first").attr({'attr1':'v1','attr2':'v2'...});
//找到最后一个input,通过使用removeAttr删除属性
$("input:last").removeAttr('value');
//得到.first-div内的文本,并以此来设置最后一个p内的文本
$('p:last').text( $(".first-div").text() )
//.html() 不传入值,就是获取.first-div类的HTML内容,不仅仅是文本
//.html( htmlString ) 用之前得到的内容来设置第一个p标签的html内容
$('p:first').html( $(".first-div").html() ) ;
//.val()获取表单id为single元素的值
$("p").text( $("#single").val() );
//设置表单text字段内的值
$("input[type='text']").val('修改表单的字段')

.html(),.text(),.val()三种方法都是用来读取选定元素的内容;只不过.html()是用来读取元素的html内容(包括html标签),.text()用来读取元素的纯文本内容,包括其子元素,.val()是用来读取表单元素的"value"值。其中.html()和.text()方法不能使用在表单元素上,而.val()只能使用在表单元素上;另外.html()方法使用在多个元素上时,只读取第一个元素;.val()方法和.html()相同,如果其应用在多个元素上时,只读取第一个表单元素的"value"值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。.html(htmlString),.text(textString)和.val(value)三种方法都是用来替换选中元素的内容,如果三个方法同时运用在多个元素上时,那么将会替换所有选中元素的内容。.html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容。

JQuery添加与删除样式

//为class=left下的div元素增加一个新样式
$('.left div').addClass('newClass')
//找到所有的div,然后通过addClass函数增加类名
$("div").addClass(function(index,className) {
 //找到类名中包含imooc的元素,为其添加类名
 if(-1 !== className.indexOf('imooc')){    
  $(this).addClass('imoocClass') //this指向匹配元素集合中的当前元素
 }
});
//class=left下div元素删除newClass样式
$('.left div').removeClass('newClass');
//如果该元素存在该类名就去除,否则就添加
$('.left div').toggleClass('newClass');
//获取class=first的字体大小样式值
$('p:eq(1)').text( $('.first').css("font-size"));
//获取一组属性值并返回为一个对象
var value = $('.first').css(['width','height']);
//通过对象访问到对应的值
document.write( "widht:" + value.width + " height:" +value.height) ;
//设置样式属性值
$('.fourth').css("background-color","red");
//设置多个属性值
$('.seventh').css({
 'font-size'  :"15px",
 "background-color" :"#40E0D0"
});

addClass与css两个方法均用于操作页面样式,两者比较。可维护性:.addClass()的本质是通过定义个class类的样式规则,给元素添加一个或多个类。css方法是通过JavaScript改变元素的样式。通过.addClass()我们可以批量的给相同的元素设置统一规则,变动起来比较方便,可以统一修改删除。如果通过.css()方法就需要指定每一个元素一一修改,比较麻烦。灵活性:通过.css()方式可以很容易动态的去改变具体一个元素的属性,不需要繁琐的定义一个class类的规则。一般来说在不确定开始布局规则,通过动态生成的HTML代码结构中,都是通过.css()方法处理的。样式值:.addClass()本质只是针对class的类的增加删除,不能获取到指定样式的属性的值,.css()可以获取到指定的样式值。样式的优先级:css的样式是有优先级的,当外部样式、内部样式和内联样式同一样式规则同时应用于同一个元素的时候,优先级如下:外部样式 < 内部样式 < 内联样式。

.addClass()方法是通过增加class名的方式,那么这个样式是在外部文件或者内部样式中先定义好的,等到需要的时候在附加到元素上,通过.css()方法处理的是内联样式,直接通过元素的style属性附加到元素上的通过.css方法设置的样式属性优先级要高于.addClass()方法

总结:.addClass与.css方法各有利弊,一般若是静态的结构,且确定了布局的规则,可以用addClass的方法,增加统一类规则。如果是动态的HTML结构,在不确定规则,或者经常变化的情况下,一般多考虑.css()方式

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
使用jQuery,Angular实现登录界面验证码详解
Apr 27 jQuery
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
May 20 jQuery
jQuery 利用ztree实现树形表格的实例代码
Sep 27 jQuery
jQuery实现炫丽的3d旋转星空效果
Jul 04 jQuery
jquery获取select选中值的文本,并赋值给另一个输入框的方法
Aug 21 jQuery
jQuery.validate.js表单验证插件的使用代码详解
Oct 22 jQuery
jQuery实现上下滚动公告栏详细代码
Nov 21 jQuery
jQuery选择器之基本过滤选择器用法实例分析
Feb 19 jQuery
layui+jquery支持IE8的表格分页方法
Sep 28 jQuery
jQuery操作动画完整实例分析
Jan 10 jQuery
基于ajax及jQuery实现局部刷新过程解析
Sep 12 jQuery
如何解决jQuery 和其他JS库的冲突
Jun 22 jQuery
JQuery常用简单动画操作方法回顾与总结
Dec 07 #jQuery
jQuery实现全选、反选和不选功能的方法详解
Dec 04 #jQuery
jQuery轮播图功能制作方法详解
Dec 03 #jQuery
jQuery实现弹幕特效
Nov 29 #jQuery
jquery实现直播弹幕效果
Nov 28 #jQuery
jQuery实现简单弹幕效果
Nov 28 #jQuery
jQuery实现轮播图效果
Nov 26 #jQuery
You might like
PHP 第一节 php简介
2012/04/28 PHP
php可扩展的验证类实例(可对邮件、手机号、URL等验证)
2015/07/09 PHP
PHP实现删除字符串中任何字符的函数
2015/08/11 PHP
浅谈PHP中关于foreach使用引用变量的坑
2016/11/14 PHP
Mootools 1.2教程 滚动条(Slider)
2009/09/15 Javascript
javascript实现状态栏文字首尾相接循环滚动的方法
2015/07/22 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
AngularJS过滤器详解及示例代码
2016/08/16 Javascript
Javascript中document.referrer隐藏来源的方法
2017/01/16 Javascript
Vue.js组件tab实现选项卡切换
2020/03/23 Javascript
基于vue实现多引擎搜索及关键字提示
2017/03/16 Javascript
解决html input验证只能输入数字,不能输入其他的问题
2017/07/21 Javascript
vue+swiper实现侧滑菜单效果
2017/12/28 Javascript
jquery实现左右轮播切换效果
2018/01/01 jQuery
基于vue v-for 循环复选框-默认勾选第一个的实现方法
2018/03/03 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
js动态获取时间的方法分析
2019/08/02 Javascript
python发送邮件示例(支持中文邮件标题)
2014/02/16 Python
python实现带错误处理功能的远程文件读取方法
2015/04/29 Python
python 去除txt文本中的空格、数字、特定字母等方法
2018/07/24 Python
python读取txt文件并取其某一列数据的示例
2019/02/19 Python
快速解决docker-py api版本不兼容的问题
2019/08/30 Python
通过字符串导入 Python 模块的方法详解
2019/10/27 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
简单掌握CSS3将文字描边及填充文字颜色的方法
2016/03/07 HTML / CSS
英国舒适型鞋履品牌:FitFlop
2017/05/17 全球购物
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
Levi’s西班牙官方网站:李维斯,著名的牛仔裤品牌
2020/08/20 全球购物
Deichmann英国:德国鞋类零售商
2021/01/30 全球购物
动物科学专业毕业生的自我评价
2013/11/29 职场文书
家长会邀请书
2014/01/25 职场文书
青年志愿者事迹材料
2014/02/07 职场文书
简易版租房协议书范本
2014/10/13 职场文书
SpringBoot快速入门详解
2021/07/21 Java/Android
对象析构函数__del__在Python中何时使用
2022/03/22 Python