Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Связываем два объекта (https://javascript.ru/forum/events/54398-svyazyvaem-dva-obekta.html)

Andrey Kovalchuk 16.03.2015 04:04

Связываем два объекта
 
Добра всем.

Дано:

<html>
<body>
<content>
          <box> Картинка №1 </box>
          <img src="" alt="Картинка №2"> 
</content>
</body>
</html>

Задача: реализовать следующую зависимость объекта box от img: если аргумент src ="", то box.display:none;

Вопрос: Как реализовать такую зависимость?

Alexander Belov 16.03.2015 06:28

Присваеваем id элементам <box> и <img>, чтобы обратиться непосредственно к ним. Допустим, что src="x":

<html>
<body>
<content>
<box id="box"> Картинка №1 </box>
<img id="image" src="x" alt="Картинка №2">
</content>
</body>
</html>

if (document.getElementById('image').src == "x")
{
document.getElementById('box').style.display = "none";
}

http://jsbin.com/cisocunipu/1/edit?html,js,output

danik.js 16.03.2015 08:31

Картинка <img src=""> инициирует http-запрос к текущей странице, как минимум в Firefox. То есть так вообще нельзя делать.

рони 16.03.2015 10:40

danik.js,
и onerror тогда пролетает ?

danik.js 16.03.2015 13:55

рони, причем тут onerror? <img> не должен быть с пустым src.
Если очень хочется, то может быть src="data:" , не уверен. Вообще не понимаю зачем img с пустым src выводить на страницу?

vvkk 17.03.2015 18:07

!!document.images[0].src.length?document.getElementsByTagName("box")[0].style="display:none":document.getElementsByTagNam e("box")[0].style="display:block"


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