У меня есть HTML:
<div id="divid">
<a href="d#link1">1</a>
<a href="d#link2">2</a>
<a href="d#link3">3</a>
.....................
</div>
У меня есть сценарий для получения всех ссылок из div:
<script>
var links = document.getElementById('divid').getElementsByTagName('a') ;
</script>
Затем я хочу написать ссылку в класс, например:
<script>
var links = document.getElementById('divid').getElementsByTagName('a') ;
document.write("<div class="'+link[1]+" "+ link[i]+'">Class is added links</div>");
</script>
Это означает, что после записи у меня есть HTML:
<div class="d#link1 d#link2 d#link3">Classes is added links</div>
Как я могу это сделать? Используется для цикла или нет? как?
Вы должны получить свойство href от каждого элемента. Поместите их в массив, и вы можете просто присоединиться к строкам:
var elements = document.getElementById('divid').getElementsByTagName('a');
var links = [];
for (var i = 0; i < elements.length; i++) {
links.push(elements[i].href);
}
document.write("<div class="' + links.join(" ") + '">Class is added links</div>");
Используйте соединение в сочетании с картой:
var classString = links.map(function(link) { return link.attributes.href; } ).join(' ');
map
не существует в IE до версии 9.