Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!doctype html>
<meta charset="utf-8">
<title></title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body>
<button></button>
<div id="foo"></div>
<p data-foo=""></p>
<script>
test(function() {
var buttonElement = document.getElementsByTagName('button')[0];
assert_equals(buttonElement.hasAttributes(), false, 'hasAttributes() on empty element must return false.');
var emptyDiv = document.createElement('div');
assert_equals(emptyDiv.hasAttributes(), false, 'hasAttributes() on dynamically created empty element must return false.');
}, 'element.hasAttributes() must return false when the element does not have attribute.');
test(function() {
var divWithId = document.getElementById('foo');
assert_equals(divWithId.hasAttributes(), true, 'hasAttributes() on element with id attribute must return true.');
var divWithClass = document.createElement('div');
divWithClass.setAttribute('class', 'foo');
assert_equals(divWithClass.hasAttributes(), true, 'hasAttributes() on dynamically created element with class attribute must return true.');
var pWithCustomAttr = document.getElementsByTagName('p')[0];
assert_equals(pWithCustomAttr.hasAttributes(), true, 'hasAttributes() on element with custom attribute must return true.');
var divWithCustomAttr = document.createElement('div');
divWithCustomAttr.setAttribute('data-custom', 'foo');
assert_equals(divWithCustomAttr.hasAttributes(), true, 'hasAttributes() on dynamically created element with custom attribute must return true.');
}, 'element.hasAttributes() must return true when the element has attribute.');
</script>
</body>