一、前言

本篇主要讲解如何使用jQuery获取和操作元素的属性和css样式

二、“DOM属性”与元素属性

1.运行一下代码

<img src="/images/logo_small.gif" class="img_logo" />

2.分析代码

元素属性src:/images/logo_small.gif

元素属性class:img_logo

DOM属性currentSrc:http://localhost/images/logo_small.gif

DOM属性className:img_logo

三、操作“DOM属性”

1.使用each函数来遍历jQuery包装集

<img src="/images/logo_small.gif" class="img_logo" />
<script>
$("img").each(function (index) {
alert("index:" + index + "|className:" + this.className + "|alt:" + this.alt);
this.alt = "图片";
alert("index:" + index + "|className:" + this.className + "|alt:" + this.alt);
});
</script>

2.each函数的说明

each( callback )  Returns: jQuery包装集

对包装集中的每一个元素执行callback方法,其中callback方法接收一个参数,表示当前遍历的索引值,从0开始

四、操作“元素属性”

1.在JavaScript中可以使用getAttribute和setAttribute来操作元素的“元素属性”

<img src="/images/logo_small.gif" class="img_logo" />
<script>
var img = document.getElementsByClassName("img_logo")[0];
alert(img.getAttribute("src"));
img.setAttribute("src", "http://www.cnblogs.com");
alert(img.getAttribute("src"));
</script>

2.jQuery中使用attr()包装集函数,操作包装集中所有元素的属性

$("img").attr("src"); 返回文档中第一个匹配图像的src属性值
$("img").attr({ src: "test.jpg", alt: "Kimisme" }); 所有图像设置src和alt属性
$("img").attr("src","test.jpg") 所有图像设置src属性
$("img").attr("title", function() { return this.src }); 所有匹配图像的src属性的值设置为title属性的值
$("img").removeAttr("src"); 将文档中图像的src属性删除

五、修改css样式

$("p").addClass("selected");

$("p").addClass("colorRed borderBlue");
为匹配的元素加上 'selected' 类

添加两个class
$("p").hasClass("selected") 判断包装集是否有class = selected
$("p").removeClass("selected");

$("p").removeClass();
从匹配的元素中删除 'selected' 类

移除所有class
$("p").toggleClass("selected"); 为匹配的元素切换 'selected' 类
var count = 0; $("p").click(function () { $(this).toggleClass("highlight", count++ % 3 == 0); }); 每三次点击切换高亮样式

六、设置常用属性

1.高和宽相关

$("p").height(); 获取第一个匹配的段落的高
$("p").height(20); 把所有段落的高设为 20px
$("p").width() 获取第一个匹配的段落的宽
$("p").width(20); 将所有段落的宽设为 20px
innerHeight( )  
innerWidth( )  
outerHeight( [margin] )  
outerWidth( [margin] )  

2.位置相关

var p = $("p");var offset = p.offset();console.log(offset.top+","+offset.left); 获取匹配元素在当前窗口的相对偏移(18,6)
var p = $("p");var position = p.position();console.log(position.top + "," + position.left); 获取匹配元素相对父元素的偏移(0,8)
var p = $("p");var scrollTop = p.scrollTop();console.log(scrollTop); 获取匹配元素相对滚动条顶部的偏移(0)
var p = $("p");var scrollTop = p.scrollTop(300); 设定垂直滚动条值
var p = $("p");var scrollLeft = p.scrollLeft();console.log(scrollLeft); 获取匹配元素相对滚动条左侧的偏移(0)
var p = $("p");var scrollLeft= p.scrollLeft(300); 设置相对滚动条左侧的偏移

七、参考文章

http://www.cnblogs.com/zhangziqiu/archive/2009/05/05/jQuery-Learn-4.html

jQuery学习笔记(4)-设置元素的属性和样式的更多相关文章

  1. HTML5学习笔记三 HTML元素、属性、标题、段落简介

    一.HTML 元素 HTML 元素以开始标签起始 HTML 元素以结束标签终止 元素的内容是开始标签与结束标签之间的内容 某些 HTML 元素具有空内容(empty content) 空元素在开始标签 ...

  2. JQuery学习笔记(2)——数组 属性 事件

    each遍历 JQueryObjectArray.each(function(index,Element)) $(".myTable").each(function(i,ele){ ...

  3. 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式

    本系列文章导航 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式 一.摘要 本篇文章讲解如何使用jQuery获取和操作元素的属性和CSS样式. 其中DOM属性和元素属性的区分值得 ...

  4. jquery学习笔记(二):DOM元素操作

    内容来自[汇智网]jquery学习课程 2.1 元素属性操作 1.获取元素的属性 语法:attr(name) 参数name表示属性的名称 2.设置元素的属性 单个属性设置语法:attr(key,val ...

  5. WPF 学习笔记-设置属性使窗口不可改变大小

    原文:WPF 学习笔记-设置属性使窗口不可改变大小 调整Windows下的ResizeMode属性: ResizeMode = NoResize Resize属性是控制Windows是否可以改变大小, ...

  6. Python3+Selenium3+webdriver学习笔记10(元素属性、页面源码)

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记10(元素属性.页面源码)'''from selenium i ...

  7. jQuery 学习笔记

    jQuery 学习笔记   一.jQuery概述    宗旨: Write Less, Do More.    基础知识:        1.符号$代替document.getElementById( ...

  8. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  9. JQuery学习笔记——层级选择器

    JQuery学习笔记--层级选择器 上一篇学习了基础的五种选择,分别是id选择器,class选择器,element选择器,*选择器 和 并列选择器.根据手册大纲,这篇学习的是层级选择器. 选择器: 1 ...

随机推荐

  1. Path Sum(参考别人,二叉树DFS)

    Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all ...

  2. 【SQL Server 学习系列】-- 收缩数据库文件大小

    USE WebExam; GO ALTER DATABASE WebExam SET RECOVERY SIMPLE; GO -- 收缩文件到 1 MB. ); GO ALTER DATABASE W ...

  3. CSS+Jquery实现QQ分组列表

    实现效果图如下: 说明: 1.css隐藏分组下的好友内容: 2.Jquery实现点击分组项事件,实现好友内容的显示和隐藏: 3.样式1,可展开多个分组:样式2,只能有一个分组展开: 源码: <! ...

  4. 程序猿是如何解决SQLServer占CPU100%的--马非码

    http://www.cnblogs.com/marvin/p/ASolutionForSQLServerCauseHighCPU.html

  5. FreeRTOS系列第14篇---FreeRTOS任务通知

    注:本文介绍任务通知的基础知识,具体源代码分析见<FreeRTOS高级篇8---FreeRTOS任务通知分析> 每一个RTOS任务都有一个32位的通知值,任务创建时,这个值被初始化为0.R ...

  6. Codeforces Round #320 (Div. 2) [Bayan Thanks-Round] D "Or" Game 枚举+前缀后缀

                                                                            D. "Or" Game       ...

  7. [mac]WireShark检測不到网卡怎么办?

    wireshark是一个很好用的抓包工具,有windows版本号和mac版本号,在mac下安装wireshark,启动后发现提示"There are no interfaces on whi ...

  8. HDU 5976 Detachment 【贪心】 (2016ACM/ICPC亚洲区大连站)

    Detachment Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...

  9. linux常见基础问题

    1,32位与64位的区别,怎么查看系统版本? 32位相比于64位处理速度更慢一些,64位同样也比32位更占内存.用户体验上没有区别:用uname  -a 查看系统版本信息 2,swap分区的作用是什么 ...

  10. YTU 2622: B 虚拟继承(虚基类)-沙发床(改错题)

    2622: B 虚拟继承(虚基类)-沙发床(改错题) 时间限制: 1 Sec  内存限制: 128 MB 提交: 487  解决: 393 题目描述 有一种特殊的床,既能当床(Bed)用又能当沙发(S ...