Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2013, 16:43   #1
Heng
Форумчанин
 
Регистрация: 27.02.2012
Сообщений: 117
По умолчанию Почему не меняется атрибут ?

Что исправить подскажите плз.

Код HTML:
<html>
<head>
<title>Картинки</title>
</head>

<body>
<form name="Zad4">
  <p>&nbsp;</p>

<img style="position:absolute; left: 314px; top: 16px;" id="i2" src="Ursa.jpg" height="419" width="430"/>

 <label>
<input style="position:absolute; name=; left: 512px; top: 444px;" id="r2" type="checkbox" onClick="Show2" checked  >
</label>
<a style="position:absolute; left: 534px; top: 445px;">Ursa</a>
 

<script language="JavaScript">
   
    function Show2()
	{
	var bn = document.getElementById("r2");
	var el = document.getElementById("i2");
	
     if (bn.checked==true) el.style.visibility="visible"
	 if (bn.checked==false) el.style.visibility="hidden"
     //if (document.forms[0].RG2.checked==false) document.forms[0].i2.visibility = "hidden"
    }
 
</script>
</body>
</html>
Heng вне форума Ответить с цитированием
Старый 13.11.2013, 16:56   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
if (bn.checked==true) el.style.visibility="visible"
if (bn.checked==false) el.style.visibility="hidden"
Упростим?:
Код:
<html>
<head>
<title>Картинки</title>
</head>

<body>
<form name="Zad4">
  <p>&nbsp;</p>

<img style="position:absolute; left: 314px; top: 16px;" id="i2" src="Ursa.jpg" height="419" width="430"/>

 <label>
<input style="position:absolute; name=; left: 512px; top: 444px;" id="r2" type="checkbox" onClick="Show2(this)" checked  >
</label>
<a style="position:absolute; left: 534px; top: 445px;">Ursa</a>
 

<script language="JavaScript">
   
    function Show2()
	{
	var el = document.getElementById("i2");
	if(el) el.style.visibility=(this.checked)?"visible":"hidden"; else alert("Такое поле не найдено")
    }
 
</script>
</body>
</html>
Единственное что я бы еще проделал вместо onclick попробовал бы onchange если такое событие есть (должно быть).
Поставь alert() внутрь функции и убедись что она вообще вызывается, мне например не нравится твое onClick. По-моему JS всетки регистрозависим (хотя вот могу опшибаться.)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.11.2013, 17:49   #3
Heng
Форумчанин
 
Регистрация: 27.02.2012
Сообщений: 117
По умолчанию

Дело в том что я только начинаю изучать JavaScript и поэтому много чего не понятно и в данном случае, а оказывается функция не вызывалась потому что я непоставил скобки в атрибуте onClick="Show2()"


И на счет упростить. Упрощенный код ту же функцию будет выполнять ? или это пример упрощения другого кода ?

Последний раз редактировалось Heng; 13.11.2013 в 17:53.
Heng вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
атрибут файла shelest Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 16.11.2012 11:40
Атрибут tittle Anton HTML и CSS 1 15.11.2012 18:55
На Win7 не меняется курсор. Почему? Genco Общие вопросы Delphi 4 27.02.2011 03:20
Почему меняется Handle? Aistto Мультимедиа в Delphi 1 25.10.2008 11:20
Как атрибут поставить delphin100 Общие вопросы Delphi 9 14.01.2008 23:15