<header>
<h2 class="title">Attr: item() method</h2>
<p class="description">Метод, що повертає вузол (node) за його порядковим індексом у колекції атрибутів елемента.</p>
</header>
<main>
<div class="result">
<label>
Виберіть індекс атрибута:
<input type="number" id="attrIndex" min="0" value="0" />
</label>
<button id="getAttrBtn">Отримати атрибут</button>
<p id="output"></p>
<div id="demoDiv" data-role="header" data-color="blue" data-size="large">Це демонстраційний div елемент</div>
</div>
</main>
body {
font-size: 16px;
line-height: 1.5;
font-family: monospace;
}
header {
background-color: #f1f1f1;
margin-bottom: 25px;
padding: 15px;
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
header h2.title {
padding-bottom: 15px;
border-bottom: 1px solid #999;
}
header p.description {
font-style: italic;
color: #222;
}
.result {
background-color: #f8f8f8;
padding: 15px;
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
const demoDiv = document.getElementById('demoDiv');
const getAttrBtn = document.getElementById('getAttrBtn');
const output = document.getElementById('output');
getAttrBtn.addEventListener('click', () => {
const attrIndex = document.getElementById('attrIndex').value;
const attr = demoDiv.attributes.item(attrIndex);
if (attr) {
output.textContent = `Атрибут ${attrIndex}: ${attr.name} = "${attr.value}"`;
if (attr.name === 'data-color') {
demoDiv.style.color = attr.value;
} else if (attr.name === 'data-size') {
demoDiv.style.fontSize = attr.value === 'large' ? '24px' : '16px';
}
} else {
output.textContent = `Елемент не має атрибута з індексом ${attrIndex}`;
}
});
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.