Я пытался найти решение своей проблемы в течение нескольких дней без везения, я нашел это: getElementsByClassName doesn't work, но это не решение моей проблемы, так как я хочу получить доступ ко всем тегам и измените их, так что здесь мы идем:Выберите все теги в divs с определенным классом
Я хочу, чтобы изменить стиль тегов, которые находятся в пределах div с определенным классом. Я начал с этого с идентификатором в div, и это работает точно так, как я его хочу, но поскольку страница, где я буду использовать это, будет иметь один и тот же div, который появляется несколько раз, я должен использовать класс, а я не могу заставить его работать. Я должен использовать javascript, а не jQuery.
Пример того, как он работал с ID:
var images = document.getElementById("test").getElementsByTagName("img");
for (var i = 0; i < images.length; i++) {
images[i].align = "right";
}
<div id="test">
<img src="http://galerie32.de/images-designer/thumbs/dummy-user.jpg" width="100">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam lobortis turpis justo, eu egestas elit aliquet sit amet. Vivamus convallis, dolor a euismod scelerisque, nisi lorem placerat nisi, sed euismod ligula eros in lorem. Pellentesque vel ante semper,
convallis ante in, mollis odio.
</p>
<img src="http://galerie32.de/images-designer/thumbs/dummy-user.jpg" width="100">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam lobortis turpis justo, eu egestas elit aliquet sit amet. Vivamus convallis, dolor a euismod scelerisque, nisi lorem placerat nisi, sed euismod ligula eros in lorem. Pellentesque vel ante semper,
convallis ante in, mollis odio.
</p>
</div>
Пример того, как я хочу работать:
var images = document.getElementsByClassName("test").getElementsByTagName("img");
for (var i = 0; i < images.length; i++) {
images[i].align = "right";
}
<div class="test">
<img src="http://galerie32.de/images-designer/thumbs/dummy-user.jpg" width="100">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam lobortis turpis justo, eu egestas elit aliquet sit amet.
</p>
<img src="http://galerie32.de/images-designer/thumbs/dummy-user.jpg" width="100">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam lobortis turpis justo, eu egestas elit aliquet sit amet.
</p>
</div>
<div class="test">
<img src="http://galerie32.de/images-designer/thumbs/dummy-user.jpg" width="100">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam lobortis turpis justo, eu egestas elit aliquet sit amet.
</p>
<img src="http://galerie32.de/images-designer/thumbs/dummy-user.jpg" width="100">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam lobortis turpis justo, eu egestas elit aliquet sit amet.
</p>
</div>
Я понимаю что должен быть совершенно другой способ записи заявления, когда я хочу получить доступ к классам, но я не могу понять, как это сделать.
Любой, кто знает и может дать мне несколько указателей?
http://jsfiddle.net/ge1Lmanv/ Вам нужны две петли, чтобы получить все элементы .... getElementsByClassName возвращает коллекцию HTML, и вы тоже можете ее перебирать ... – sinisake
Что вы получаете, когда пытаетесь этот JavaScript? Ошибка? –
Это было бы проще, если бы вы правильно использовали возможности селекторов CSS ... например, изменить имя класса общего элемента предка. и есть правило в вашей таблице стилей, которое форматирует элементы-потомки по-разному на основе этого. – CBroe