输出元素的所有set属性

时间:2010-12-01 01:08:30

标签: javascript jquery

我有一个jquery对象,它表示页面上的输入按钮元素。如何使用jquery通过console.log输出此元素的所有属性/属性?

2 个答案:

答案 0 :(得分:8)

假设页面的HTML是

<body>
  <img id="smile" class="big" alt="smile" madeupattribute="yep" src="http://mikegrace.s3.amazonaws.com/forums/stack-overflow/smile.png"/>
</body>

你可以做到

var domElement = $("img")[0] // [0] returns the first DOM element that jQuery found
$(domElement.attributes).each(function(index, attribute) {
  console.log("Attribute:"+attribute.nodeName+" | Value:"+attribute.nodeValue);
});

示例页面 =&gt; http://mikegrace.s3.amazonaws.com/forums/stack-overflow/example-get-element-attributes-jquery.html

示例页面控制台输出

alt text

答案 1 :(得分:1)

如果您只想要HTML属性:

var e = document.getElementById('my_input');
for (var x in e)
  if (e.hasAttribute(x))
    console.log(x);

如果您想要所有可通过JavaScript检索/设置的属性:

var e = document.getElementById('my_input');
for (var x in e)
  if (typeof e[x] != 'function')
    console.log(x);

Example on JSBin - 出于某种原因,在尝试计算typeof e['selectionStart']时,Firefox在“所有属性”列表的中途失败。