跟着JQuery API学Jquery 之二 属性


Posted in Javascript onApril 09, 2010

我们常常需要对节点属性,内容,文本进行变更,就需要用到这里的几个函数了 。

1属性
这里我们看到了一个 attr()函数,有四种形式其中 attr(name)是得到一个所选择的属性值,attr(properties)attr(key,value) attr(key,fn)是为一个属性赋值
这里要说一下的是在Jquery中有这样的设计,得到一个对象的值和给一个对象赋值使用的是同样的函数,用fn(name)来给一个对象赋值,用fn(name,value)来给一个对象赋值。
先看attr(name)是如何来得到一个属性值的
我们有
<img src="1.jpg"/>
这样我们希望得到img中stc的值 首先我们使用选择器来选中这个img $(“img”)得到了上面的那个节点,然后我们用attr()来得到src的值:$(”img”).attr(“src”)
这样我们就得到了1.jpg这个值

现在我们希望把1.jpg这个图想换成2.jpg这个图像:就用 $(“img”).attr(“src”,”2.jpg”) ,这个就是fn(name,key)这种形式,当然我们知道javascript中比如 onclick中可能是一个函数,当然其他的属性也可以是函数,所以我们这个key也可以是一个函数 $(“img”).attr(“src”,function(){return ‘3.jpg'}),这是第二种形式其实和第一种是一样的
第三种,也就是attr(properties)这种是以josn格式来以name:value来对属性进行赋值,在Jquery中,这种方式是很常用的,结构也非常的清晰
比如我们要设置 img的alt和src 可以直接写成$(“img”).attr({src:”4.jpg”,alt:”说明”})
一般我们做系统都要有增加、修改、删除。前面我们说了前两个了,那如何删除一个属性呢
这里有要用到 removeAttr(name)这里就很容易理解了 和arrt(name)刚好相反,一个是得到一个属性,一个是删除一个属性 $(“img”).removeAttr(“alt”)

好了我们总结一下操作属性的几个函数
查找:$(”img”).attr(“src”) 查找出src的值
添加/修改$(“img”).attr(“src”,”2.jpg”) $(“img”).attr(“src”,function(){return “2.jpg”}) $(“img”).attr({src:”2.jpg”})
删除 $(“img”).removeAttr(“src”)
2 css类
当我们需要给一个节点比如
<div></div>
来添加一个css的样式 那我们需要怎么做呢
我们按照上面属性的方法 我们先在css中写一个class样式.sty{……},我们选择这个div 然后给他添加一个class $(“div”).attr(“class”,”sty”),
后来我们发现这样是不是太麻烦了,所以就发明了addClass(class)来对上面的进行简写
$(“div”).addClass(“sty”)就完事了。
既然有添加当然也就免不了删除了 $(“div”).removeClass(“sty”) 删除sty这个类

还有一个函数toggleClass(class)如果存在就删除,不存在就添加。
这个确实是一个很怪异的函数这个有什么用呢,比如我们在一组一个
<ul>
<li><li>
<li><li>
<li><li>
</ul>
上我们在对li上面的鼠标进入和鼠标移出都添加上这个函数的话 ,就可以实现鼠标移动的效果了

3 html
这里我们看到了一个html()和一个html(val)就是我们前面说的fn(name)fn(name,value)这种类型的函数
Html()是取得第一个匹配元素的html类容
Html(val)是设置匹配的节点的html的类容

4 文本
这里同样有两个函数 text()text(val)一个是取值 一个是设置值 和html差不多
取值不同的是html()是取匹配的第一个元素的html类容,而text是取得的所有的text而忽略了html节点
而赋值的话text()对html的类容比如<a></a>会转换成文本 而html()仍然解释为html元素

5值
这里还是一样 val()和val(val)一个是获取值,一个是设置值 比如
<input value="some text"/>
我们获取这个值 some text $(“input”).val()
设置这个值$(“input”).val(“xxiu”)

这里我们对属性就看完了 我们发现我们只看了几个函数而已
attr(name[,val,|fn]) removeAttr(name) 添加设置删除一个属性
addClass(class) removeClass(class) 添加设置删除一个类
html([val]) 得到/设置一个heml
text([val]) 得到/设置一个text
val([val]) 得到/设置一个value

Javascript 相关文章推荐
Jquery Change与bind事件代码
Sep 29 Javascript
关于全局变量和局部变量的那些事
Jan 11 Javascript
Javascript实现页面跳转的几种方式分享
Oct 26 Javascript
jQuery中removeProp()方法用法实例
Jan 05 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
Nov 18 Javascript
BootStrap实现树形目录组件代码详解
Jun 21 Javascript
bootstrap fileinput 插件使用项目总结(经验)
Feb 22 Javascript
vue-cli单页应用改成多页应用配置详解
Jul 14 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
Feb 13 jQuery
Javascript 编码约定(编码规范)
Mar 11 Javascript
layui按条件隐藏表格列的实例
Sep 19 Javascript
vue表单验证之禁止input输入框输入空格
Dec 03 Vue.js
JSON 教程 json入门学习笔记
Sep 22 #Javascript
jquery.AutoComplete.js中文修正版(支持firefox)
Apr 09 #Javascript
javaScript call 函数的用法说明
Apr 09 #Javascript
javascript 自动填写表单的实现方法
Apr 09 #Javascript
Extjs入门之动态加载树代码
Apr 09 #Javascript
JS 非图片动态loading效果实现代码
Apr 09 #Javascript
extJs 下拉框联动实现代码
Apr 09 #Javascript
You might like
php禁止某ip或ip地址段访问的方法
2015/02/25 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
javascript循环变量注册dom事件 之强大的闭包
2010/09/08 Javascript
基于mootools 1.3框架下的图片滑动效果代码
2011/04/22 Javascript
常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
2012/01/04 Javascript
解决Extjs上传图片无法预览的解决方法
2012/03/22 Javascript
jquery ajax post提交数据乱码
2013/11/05 Javascript
jquery实现的鼠标拖动排序Li或Table
2014/05/04 Javascript
Javascript验证Visa和MasterCard信用卡号的方法
2015/07/27 Javascript
jQuery实现图片左右滚动特效
2020/04/20 Javascript
微信小程序购物商城系统开发系列-目录结构介绍
2016/11/21 Javascript
微信小程序 textarea 组件详解及简单实例
2017/01/10 Javascript
vuejs指令详解
2017/02/07 Javascript
原生js实现简单的焦点图效果实例
2017/12/14 Javascript
微信小程序实现红包功能(后端PHP实现逻辑)
2018/07/11 Javascript
vue路由组件按需加载的几种方法小结
2018/07/12 Javascript
js实现纯前端压缩图片
2020/11/16 Javascript
[36:33]完美世界DOTA2联赛循环赛 Matador vs Forest 第一场 11.06
2020/11/06 DOTA
[46:23]完美世界DOTA2联赛PWL S2 FTD vs Magma 第一场 11.20
2020/11/23 DOTA
Python实现加载及解析properties配置文件的方法
2018/03/29 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
Python tkinter和exe打包的方法
2020/02/05 Python
Python监听剪切板实现方法代码实例
2020/11/11 Python
HTML5本地存储和本地数据库实例详解
2017/09/05 HTML / CSS
error和exception有什么区别
2012/10/02 面试题
Python使用openpyxl复制整张sheet
2021/03/24 Python
广告学专业应届生求职信
2013/10/01 职场文书
辩论赛主持词
2014/03/18 职场文书
校本教研活动总结
2014/07/01 职场文书
文体活动总结
2015/02/04 职场文书
2015年电工工作总结
2015/04/10 职场文书
联欢会开场白
2015/06/01 职场文书
“鬼灭之刃”热度不减,其成功背后的原因是什么?
2022/03/22 日漫
《战锤40K:暗潮》跳票至9月 公布新宣传片
2022/04/03 其他游戏
table不让td文字溢出操作方法
2022/12/24 HTML / CSS