Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
JavaScript replaceChild для ВСЕХ элементов страницы?
Новая тема
Ответить
цитата
09/07/11 в 17:55
Vyacheslav
Не могу понять, почему такая конструкция обрабатывает только первое изображение документа. Как заставить произвести замену всех элементов с id="imagescr"?
Код:
<div class="epicont">
<div><img src="/images/360x202/2.jpg" id="imagescr"></div>
<div><img src="/images/360x202/3.jpg" id="imagescr"></div>
<div><img src="/images/360x202/4.jpg" id="imagescr"></div>
</div>
<div class="epicont">
<div><img src="/images/360x202/2.jpg" id="imagescr"></div>
<div class="epicont">
</div>
<div><img src="/images/360x202/3.jpg" id="imagescr"></div>
<div class="epicont">
</div>
<div><img src="/images/360x202/4.jpg" id="imagescr"></div>
</div>
<script type="text/javascript">
var newElement = document.getElementById('imagescr');
newElement.src = newElement.src.replace('360x202', '290x156');
var oldElement = document.getElementById('imagescr');
var parentDiv = oldElement.parentNode;
parentDiv.replaceChild(newElement, oldElement);
</script>
цитата
09/07/11 в 18:43
Sterx
ну как бэ Id уникален
а class нет ..
цитата
09/07/11 в 19:02
Vyacheslav
Т.е. так?
Код:
<div class="epicont">
<div><img src="/images/360x202/2.jpg" class="imagescr"></div>
<div><img src="/images/360x202/3.jpg" class="imagescr"></div>
<div><img src="/images/360x202/4.jpg" class="imagescr"></div>
</div>
<div class="epicont">
<div><img src="/images/360x202/2.jpg" class="imagescr"></div>
<div class="epicont">
</div>
<div><img src="/images/360x202/3.jpg" class="imagescr"></div>
<div class="epicont">
</div>
<div><img src="/images/360x202/4.jpg" class="imagescr"></div>
</div>
<script type="text/javascript">
var newElement = document.getElementsByClassName('imagescr');
newElement.src = newElement.src.replace('360x202', '290x156');
var oldElement = document.getElementsByClassName('imagescr');
var parentDiv = oldElement.parentNode;
parentDiv.replaceChild(newElement, oldElement);
</script>
Так тоже не сработало..
цитата
09/07/11 в 20:26
Vyacheslav
Кто шарит в JS, можете помочь с кодом?
Задача в том, чтоб на лету заменить у img часть src.
цитата
09/07/11 в 21:16
LeadFarmer
писать зачем на чистом js? подойдет код на jQuery или возражения против него есть? (некоторые ну очень не любят подключения библиотеки аж в 60 кб весом)
цитата
09/07/11 в 21:55
Sterx
Код:
<script type="text/javascript">
$('.your_class').attr('src','newPath');
</script>
цитата
09/07/11 в 22:35
Vyacheslav
Я обожаю JQuery! Он как раз должен быть включен в этот документ.
Какой код будет на jQuery?
Sterx:
не сработало.. Это jQuery?
цитата
09/07/11 в 22:36
webboxxx
Vyacheslav писал:
Так тоже не сработало..
потому что document.getElementsByClassName возвращает массив элементов. надо пройтись по нему в цикле.
цитата
09/07/11 в 22:39
webboxxx
Код:
$('img.imagescr').each(function(){
$(this).attr('src', $(this).attr('src').replace('360x202', '290x156'));
})
цитата
09/07/11 в 22:49
Vyacheslav
Сенкс!
цитата
09/07/11 в 22:53
Vyacheslav
Только ещё маленький вопросик!
Как такие функции находить в документации JQuery?
цитата
09/07/11 в 23:10
webboxxx
а в чем проблема? там же по категориям все разбито. а что не получается найти - гуглится через "jquery сделать что-то там"
цитата
10/07/11 в 03:14
freeek
JQ API
в удобном формате
Новая тема
Ответить
Эта страница в полной версии