Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   в IE нет картинок! (https://javascript.ru/forum/css-html-internet-explorer/7803-v-ie-net-kartinok.html)

Чудная 19.02.2010 22:38

в IE нет картинок!
 
Здравствуйте! Кручу код уде несколько часов... Задача в следующем: нажимаю на текст - он превращается в картинку, нажимаю на другой текст- предыдущий снова становится текстом, а нажатый меняется на свою картинку. Вот код
<body onload="first_n()">
<input name="n" id="n" type="hidden" value="name2" /><!-- хранится id выбранного названия -->
<ul>
      <li>
         <div id="name1_img" class="name"><img src="name.gif" alt="1" width="60" height="24" /></div>
         <div id="name1" class="name" onclick="check_name(this);">NAME1</div></li>
      <li> 
          <div id="name2_img" class="name"><img src="name.gif" alt="2" width="60" height="24" /></div>
         <div id="name2" class="name" onclick="check_name(this);">NAME2</div></li>        
</ul></body>

стили css
#name_img { display:none;}
#name { display:inline; cursor:pointer;}

JS мой
function first_n()
{
	var n=document.getElementById("n").value;
	document.getElementById(n).style.display="none";
	document.getElementById(n+'_img').style.display="inline";
	//alert (document.getElementById(n+'_img').style.display); 
               // alert выводит правильно - 'inline'
}
function check_name(obj)
{	
	var n=document.getElementById("n").value;
	obj.style.display="none";
	document.getElementById(obj.id+'_img').style.display="inline";
	document.getElementById(n+'_img').style.display="none";
	document.getElementById(n).style.display="inline";
	document.getElementById("n").value=obj.id;
//alert (document.getElementById(n+'_img').style.display); 
}

в Опере и FF работает так, как надо, а в IE место под картинку выделяется, слово ненужное исчезает, а картинки не видно... Переключение работает правильно. Из-за чего это может быть?

JsLoveR 19.02.2010 23:25

Чудная,
Возможно из-за того, что у Вас картинки сохранены в цветовом режиме CMYK, сохраните их в RGB. У меня уже была такая тема, смотрите здесь: http://javascript.ru/forum/dom-windo...peg-v-ie6.html
.
Ваш код работает у меня в IE6 с моими картинками, по-этому дело в самих картинках.

Чудная 19.02.2010 23:40

Изменила картинки, но результат остался тот же. Заметила, что при присвоении значения "block": document.getElementById(n+'_img').style.display="b lock"; - картинка отображается!!! Но мне необходимо все выстроить в ряд,

Чудная 19.02.2010 23:42

И если изначально задать картинкам стиль display:inline; то их видно! Но при переключении они все-равно не отображаются!


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