Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Смена значений SRC от изображений (https://javascript.ru/forum/misc/5037-smena-znachenijj-src-ot-izobrazhenijj.html)

Kolyaj 10.09.2009 21:16

Т.е. у вас вся страница состоит из одного img?

Sparter 10.09.2009 22:08

ну не из одного конечно img .
это я для примера так сказал, чтобы точно было понятно что нужно , дело в том что нужна смена именно по определённому SRC....

не ID, не Class, не tagName не подходит, т.к. там ещё множество раз повторяются все эти элементы и таким способом я заменю все сразу изображения, а нужно только шаблонное с одним и тем же SRC

к примеру список пользователей идёт и у них аватары где уникальные пути к картинкам, а у тех у кого нету аватара стоит к примеру везде src="none.gif"
поэтому и нужно только по src.

Kolyaj 10.09.2009 22:29

var imgs = document.getElementsByTagName('IMG');
for (var i = 0; i < imgs.length; i++) 
    if (imgs[i].src == 'oldSrc.gif')
        imgs[i].src = 'newSrc.gif';

Octane 10.09.2009 22:38

Kolyaj,
в src будет абсолютный адрес
alert(document.getElementsByTagName("img")[0].src)

Sparter 10.09.2009 23:41

Странно, но что-то не работает в скрипте, где-то ошибочка.
Вот весь код :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<title>JavaScripts | Смена SRC</title>
<link rel="stylesheet" href="/css/style.css" type="text/css" />
<script type="text/javascript">
var imgs = document.getElementsByTagName('IMG');
for (var i = 0; i < imgs.length; i++) 
		if (imgs[i].src == 'images/none.gif')
			imgs[i].src = 'images/images2.gif';
</script>
</head>

<body bgcolor="#000">

<br><br><br><br><br><br><br>

  <center><a href="/user.php&id4744"><img src="images/none.gif" alt="изображение"/></a><center>
 
</body>
</html>

Kolyaj 11.09.2009 00:30

Octane,
угу.

var imgs = document.getElementsByTagName('IMG');
for (var i = 0; i < imgs.length; i++) 
    if (/images\/none\.gif$/.test(imgs[i].src))
        imgs[i].src = 'images/images2.gif';
Как-то так.

Sparter 11.09.2009 03:12

Урраааа!!! Работает! спасибо вам добрый человек :) , рабочая конструкция...

Всё-таки есть тут хорошие люди, не то что "мимопроходящие" :victory:

Riim 11.09.2009 07:47

Цитата:

Сообщение от Sparter
не то что "мимопроходящие"

На самом деле мимопроходящий это как раз ты (так уж получается), всего лишь еще один из десятков проходящих здесь каждый день лентяев, мечтающих получить на халяву готовый скрипт, дабы не напрягать свой нежный мозг, вероятно не способный решать логические задачи сложнее третьего класса. Я тебе дал все необходимое для решения твоей задачи, ты же продолжил клянчить готовый скрипт, что еще я о тебе должен думать?

upd: ты же даже не поинтересовался, как работает то, что тебе дали. А то, что за тебя все сделали, так я тоже под хорошее настроение иногда выдаю что-то готовое, а что париться (настроение себе портить), набросал за пару минут готовый скрипт, и мне хорошо, всего две минуты и не надо ни с кем спорить и никого воспитывать и ему хорошо, он от счастья аж кипятком писает, но это на самом деле медвежья услуга, т. к. в следующий раз ты снова не сможешь решить похожую проблему и снова придешь клянчить, нравится всю жизнь быть попрошайкой, твое право, мне даже хорошо, меньше людей на одну вакансию.

Sparter 11.09.2009 11:53

хех, да ты ещё расплачься, обидели бедного)))

хм, да ты ещё и балабол получается, сам заявил что мимо проходил, а сейчас стрелки коцаешь ;)

Riim 11.09.2009 12:07

Цитата:

Сообщение от Sparter
хех, да ты ещё расплачься, обидели бедного)))

Если ты это мне, то ты что-то перепутал, я наоборот рад такой ситуации:
Цитата:

Сообщение от Riim
мне даже хорошо, меньше людей на одну вакансию



Цитата:

Сообщение от Sparter
хм, да ты ещё и балабол получается, сам заявил что мимо проходил, а сейчас стрелки коцаешь

Как проходил мимо, так и не задерживался, ведь я за тебя ничего не делал.

Sparter, ты получил что хотел, иди уже.

upd: жаль конечно, что я зря писал 18-й пост.


Часовой пояс GMT +3, время: 08:48.