Spry源码笔记——自动获得DOM元素所有的属性值

Adobe Spry是一个为Web设计人员开发的Ajax框架,它使得在一个HTML页面中创建丰富体验成为了可能。按说Spry是由Adobe公司开发,应该是非常强大的,但在中国却不是十分流行,可能是它的文档资料太少的缘故吧。但由于Spry是面向设计人员开发的,所以它的源码很容易看懂,对于学习来说十分合适。

以前一直在找一种能够自动获得DOM元素所有属性值的方法,今天在看Spry源码时找到了一段代码可以实现这种功能,我把它提取出来,单独作为一个函数:


function getAllAttributes(node){
	var obj = {};
	// 判断输入的是否是元素节点
	if(Boolean(node) && node.nodeType == 1){
		for(var i = 0; i < node.attributes.length; i++){
			var attr = node.attributes[i];
			obj[attr.name] = attr.value;
		}
	}
	return obj;
}

比如有下面的HTML代码:


<div id="testid" style="width:100px;" title="测试">
	Test
</div>

利用下面的JS代码:


console.log(getAllAttributes(document.getElementById('testid')));

可以得到JSON格式的DOM属性值:


{
	id:"testid",
	style:"width:100px;",
	title:"测试"
}
此条目发表在 前端 分类目录,贴了 , , , 标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已被标记为 *

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>