Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.10.2013, 14:31
Новичок на форуме
Отправить личное сообщение для ignernom Посмотреть профиль Найти все сообщения от ignernom
 
Регистрация: 03.10.2013
Сообщений: 5

Плавное появление и исчезновение двух блоков при выборе одного из них
Уважаемые знатоки,
наглядный пример тут http://fsd564.bget.ru/example2/index.html

Необходимо сделать, что бы при выборе варианта "Выбор 1" плавно раскрывался "БЛОК 1",
но при выборе варианта "Выбор 2" плавно раскрывался "БЛОК 2", а "БЛОК 1" при этом закрывался.
И обратно - при выборе варианта "Выбор 1" закрывался "БЛОК 2" и раскрывался "БЛОК 1"

<script src="jquery.js"></script>
 
<script type="text/javascript">
$(document).ready(function(){
    $('#show').click(function(){
        $('#layer').show('slow');
    });
    $('#show2').click(function(){
        $('#layer2').show('slow');
    });
});
</script>
 
<input type="radio" name="type" value="1" id="show">Выбор 1
<input type="radio" name="type" value="2" id="show2">Выбор 2<br>
<div ID="layer" style="display:none;">БЛОК 1</div>
<div ID="layer2" style="display:none;">БЛОК 2</div>


Дополнение: если можно, то желательно что бы изначально при открытии страницы уже стоял указатель на Выборе 1 с раскрытым "БЛОК 1"

Последний раз редактировалось ignernom, 03.10.2013 в 14:33.
Ответить с цитированием
  #2 (permalink)  
Старый 03.10.2013, 14:40
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

добавьте .hide(); в функции клика
Ответить с цитированием
  #3 (permalink)  
Старый 03.10.2013, 15:24
Новичок на форуме
Отправить личное сообщение для ignernom Посмотреть профиль Найти все сообщения от ignernom
 
Регистрация: 03.10.2013
Сообщений: 5

animhotep
нельзя ли поподробнее,
в javascript не разбираюсь совсем
Ответить с цитированием
  #4 (permalink)  
Старый 03.10.2013, 15:33
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

<script src="jquery.js"></script>
 
<script type="text/javascript">
$(document).ready(function(){
    $('#show').click(function(){
        $('#layer2').hide();
        $('#layer').show('slow');
    });
    $('#show2').click(function(){
        $('#layer').hide();
        $('#layer2').show('slow');
    });
});
</script>
 
<input type="radio" name="type" value="1" id="show">Выбор 1
<input type="radio" name="type" value="2" id="show2">Выбор 2<br>
<div ID="layer" style="display:none;">БЛОК 1</div>
<div ID="layer2" style="display:none;">БЛОК 2</div>
Ответить с цитированием
  #5 (permalink)  
Старый 03.10.2013, 16:12
Новичок на форуме
Отправить личное сообщение для ignernom Посмотреть профиль Найти все сообщения от ignernom
 
Регистрация: 03.10.2013
Сообщений: 5

animhotep премного благодарен за помощь
Ответить с цитированием
  #6 (permalink)  
Старый 15.10.2013, 22:26
Новичок на форуме
Отправить личное сообщение для ignernom Посмотреть профиль Найти все сообщения от ignernom
 
Регистрация: 03.10.2013
Сообщений: 5

animhotep
Появилась проблема, при изменении типа выбора вариантов с "radio" на "select" второй код отказывается работать в Хроме (при этом он работает в Опере и Мозиле)

первый вариант http://fsd564.bget.ru/example2/index.html - работает везде

вот второй вариант http://fsd564.bget.ru/example2/index2.html - не хочет работать в Хроме.

<script src="jquery.js"></script>
 
<script type="text/javascript">
$(document).ready(function(){
    $('#show').click(function(){
        $('#layer2').hide();
		 $('#layer3').hide();
        $('#layer').show('slow');
    });
    $('#show2').click(function(){
        $('#layer').hide();
		$('#layer3').hide();
        $('#layer2').show('slow');
    });
	$('#show3').click(function(){
        $('#layer').hide();
		$('#layer2').hide();
        $('#layer3').show('slow');
    });
});
</script>
 
 <select name="email_known" style="width:150px" >
     <option selected="selected" value="Не выбрано" id="choice"> Выберите </option>
     <option value="1" id="show">Выбор 1</option>      
     <option value="2" id="show2">Выбор 2</option>
     <option value="3" id="show3">Выбор 3</option>	 
    </select><br>
<div ID="layer" style="display:none;">БЛОК 1</div>
<div ID="layer2" style="display:none;">БЛОК 2</div>
<div ID="layer3" style="display:none;">БЛОК 3</div>


Думаю проблема в click(function() , наверно ее нужно заменить на функцию аналогичную select, но как это сделать я не представляю
Ответить с цитированием
  #7 (permalink)  
Старый 16.10.2013, 11:41
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

подход нужен другой. у селекта есть событие при изменении
$("select").change(function () {
 alert ( $(this).val() ); //здесь будет значение выбранного пункта 1,2,3
});
Ответить с цитированием
  #8 (permalink)  
Старый 16.10.2013, 14:01
Новичок на форуме
Отправить личное сообщение для ignernom Посмотреть профиль Найти все сообщения от ignernom
 
Регистрация: 03.10.2013
Сообщений: 5

animhotep спасибо еще раз, разобрался
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дбулируем установить значение одного <slect> при его выборе в другом Skesh Элементы интерфейса 30 02.07.2012 18:06
Плавное исчезновение и появление изображения Surlik jQuery 9 17.03.2012 14:27
Плавное появление изображений при загрузке страницы Imdoode jQuery 7 28.06.2011 10:48