JS之获取属性总结
嗨,我是沐晴,今天来说说JS中关于获取属性的一些方法和区别。闲话不说,来正题。
首先什么是属性呢,比如input标签,标签中的value id type style等,这些就是属性。我们JS获取属性一般有三种方法:
1 通过点的方式
2 通过括号的形式
3 通过 DOM的方式
通过栗子说明:
<input type="text" value="hello" id="text"/>
var oText = document.getElementById("text")
1 通过点的方式 oText.value
需要注意的是:
1 点要查找的是JS中本来就存在的属性名,不能找到变量或者函数的参数。比如下面
增加代码:
var name = "value"
oText.name
//这种方式访问就会出错,因为点的方式访问,它会去input的标签里面直接到有没有name的属性,如果没有就找不到,所以访问不到我们定义的这个变量的值
//而且如果name是某个函数的参数也不可以获取到,原理是一样的。所以封装函数属性需要作为参数的时候,访问的时候不要用点,用括号
2 标准浏览器下无法访问html中的自定义属性,可以获取通过JS参加的自定义属性
3 无法获取相对网址 比如img.src 获取的只是绝对路径
2 通过括号的形式 oText.value
1可以访问任何变量,也可以访问参数
2 标准浏览器下无法访问html中的自定义属性,可以获取通过JS参加的自定义属性(同上)
3 无法获取相对网址 比如img.src 获取的只是绝对路径(同上)
3 通过DOM的方式
涉及到三个方法
获取属性的值:getAttribute(属性名) oText.getAttribute('value')
设置属性的值:setAttribute(属性名, 要设置的值) oText.setAttribute('value','hello')
删除:removeAttribute(属性名) oText.getAttribute('value')
相比于上面的优势:
1 可以获取html中自定义的属性
2 获取的是相对网址,不过 IE7以下还是绝对网址
3 IE下可以通过style访问
<input type='text' style='width:100px;' />
var oText = document.getElementById("text")
//IE下可以这样用:oText.style.getAttribute('width') 标准浏览器不可以
一般情况下,用第三种方法的时候并不多,所以能用简单的方法就用简单的,按需要使用。。。。
JS之获取属性总结的更多相关文章
- js中获取css属性
直接获取 window.onload = function() { var but = document.getElementById('button'); var div = document.ge ...
- Thymleaf js直接获取后台传过来的对象或者对象的属性以及map
简单说明:第一次接触thymleaf模板,对于thymleaf在js中如何获取后台传递过来的值,真的挺简单的,记住就行了 代码: 后台代码: //传递一个org对象给jspublic String t ...
- js中获取css样式属性值
关于js中style,currentStyle和getComputedStyle几个注意的地方 (1)用js的style只能获取元素的内联样式,内部样式和外部样式使用style是获取不到的.针对css ...
- js获取属性
js获取属性的方法: document.getElementById(); document.getElementsByTagname(); document.getElementsByClassna ...
- JS中获取元素属性的逆天大法
给大家聊下js中获取元素属性的逆天大法,胆小慎入,切记切记!!! innerHTML.outerHTML.innerText .outerText.value.text().html(),val() ...
- js中attr 与find 获取属性值,
一.attr的用法 1. attr(属性名) //获取属性的值(取得第一个匹配元素的属性值.通过这个方法可以方便地从第一个匹配元素中获取一个属性的值.如果元素没有相应属性,则返回 und ...
- js原生获取css属性
原文参考http://blog.csdn.net/lzding/article/details/46317777 1.写在dom上的属性,内联样式 <div id="box" ...
- js 获取属性名称,再根据这个属性名获取值
if (result.success) { var obj = JSON.parse(result.data); var sltObj = document.getElementById(" ...
- 通过JS给HTML元素增加、删除和获取属性内容
1.通过ID或者其他元素找到要处理的HTML对象:(举例通过ID) var obj=document.getElementById('id');12.操作此对象 添加属性:obj.setAttribu ...
随机推荐
- 表单和iframe的使用
图片热点: 规划出图片上的一个区域,可以做出超链接,直接点击图片区域就可以完成跳转的效果.示例: 网页划区: 在一个网页里,规划出一个区域用来展示另一个网页的内容.示例: 网页的拼接: 在一个网络页面 ...
- LeetCode #329. Longest Increasing Path in a Matrix
题目 Given an integer matrix, find the length of the longest increasing path. From each cell, you can ...
- android scrollview 实现上下左右滚动方法
原来是scrollview与HorizontalScrollView组合布局 详细可参考:http://blog.csdn.net/aminfo/article/details/7846963
- HashMap的key可以是可变的对象吗???
大家都知道,HashMap的是key-value(键值对)组成的,这个key既可以是基本数据类型对象,如Integer,Float,同时也可以是自己编写的对象,那么问题来了,这个作为key的对象是否能 ...
- PHP Redis
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); class Myredis { //redis所 ...
- GTAC 2015将于11月10号和11号召开
今年的GTAC注册已经结束,将会在11月10号和11号在Google马萨诸塞州剑桥办公室召开.大家可以关注https://developers.google.com/google-test-autom ...
- 2014 UESTC暑前集训数据结构专题解题报告
A.Islands 这种联通块的问题一看就知道是并查集的思想. 做法:从高水位到低水位依序进行操作,这样每次都有新的块浮出水面,可以在前面的基础上进行合并集合的操作.给每个位置分配一个数字,方便合并集 ...
- luogu1003铺地毯[noip2011 提高组 Day1 T1]
题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯.一共有 n 张地毯,编号从 1 到n .现在将这些地毯按照编号从小到大的顺序平行于 ...
- 1D1D动态规划优化初步
再学习一下动态规划的基本优化方法- 首先这篇文章应该大家都看过吧-没看过的自行百度 关于实现的思路文章里都给好了-这篇就主要给一点题目啥的 (P.S. 电脑重装了,如果博客发出来有一些奇怪的问题不要在 ...
- 19个必须知道的Visual Studio快捷键(转)
英文原文:19 Must-Know Visual Studio Keyboard Shortcuts 本文将为大家列出在 Visual Studio 中常用的快捷键,正确熟练地使用快捷键,将大大提高你 ...