Javascript.RU

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

Как передать переменную во время инициализации плагина
Использую готовый компонент Accordion. Все работает. Но появилась проблема. Мне нужно чтобы при открытии страницы с этим компонентом, была открыта определенная секция, номер которой хранится в куки. Я ее считываю и хочу передать в accordion, чтобы при обновлении страницы открылась последняя открываемая секция. Для этого есть свойство у этого компонента active которому можно передать номер открываемой секции. Если во время инициализации поставить цифру, все работает, а если переменную, в которой хранится цифра, то не работает.
var last_cat=2;

$( "#gruppa" ).accordion({
	collapsible: false,
	heightStyle: "content",
	animate: 250,
	active: last_cat
});

Если устанавливать свойство active после инициализации, никакого эффекта нет. В javascript я новичек, подскажите как быть.
Ответить с цитированием
  #2 (permalink)  
Старый 24.06.2014, 10:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

ixen,
ваш код рабочий либо переменная невидна инициализации либо в самой переменной ничего нет
Ответить с цитированием
  #3 (permalink)  
Старый 24.06.2014, 10:15
Новичок на форуме
Отправить личное сообщение для ixen Посмотреть профиль Найти все сообщения от ixen
 
Регистрация: 08.04.2014
Сообщений: 6

Перед инициализацией проверил переменную алертом, все нормально, значение есть.
Ответить с цитированием
  #4 (permalink)  
Старый 24.06.2014, 10:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от ixen
готовый компонент Accordion
уточните что это
Ответить с цитированием
  #5 (permalink)  
Старый 24.06.2014, 10:20
Новичок на форуме
Отправить личное сообщение для ixen Посмотреть профиль Найти все сообщения от ixen
 
Регистрация: 08.04.2014
Сообщений: 6

это виджет с сайта jquery.com вот ссылка на него http://jqueryui.com/accordion/
Ответить с цитированием
  #6 (permalink)  
Старый 24.06.2014, 10:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

ixen, код рабочий вы что-то недоговариваите.
<!doctype html>

<html lang="en">

<head>

  <meta charset="utf-8">

  <title>accordion demo</title>

  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">

  <script src="http://code.jquery.com/jquery-1.10.2.js"></script>

  <script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>

</head>

<body>



<div id="gruppa">

  <h3>Section 1</h3>

  <div>

    <p>Mauris mauris ante, blandit et, ultrices a, suscipit eget.

    Integer ut neque. Vivamus nisi metus, molestie vel, gravida in,

    condimentum sit amet, nunc. Nam a nibh. Donec suscipit eros.

    Nam mi. Proin viverra leo ut odio.</p>

  </div>

  <h3>Section 2</h3>

  <div>

    <p>Sed non urna. Phasellus eu ligula. Vestibulum sit amet purus.

    Vivamus hendrerit, dolor aliquet laoreet, mauris turpis velit,

    faucibus interdum tellus libero ac justo.</p>

  </div>

  <h3>Section 3</h3>

  <div>

    <p>Nam enim risus, molestie et, porta ac, aliquam ac, risus.

    Quisque lobortis.Phasellus pellentesque purus in massa.</p>

    <ul>

      <li>List item one</li>

      <li>List item two</li>

      <li>List item three</li>

    </ul>

  </div>

</div>



<script>

var last_cat=2;

$( "#gruppa" ).accordion({
	collapsible: false,
	heightStyle: "content",
	animate: 250,
	active: last_cat
});


</script>



</body>

</html>
Ответить с цитированием
  #7 (permalink)  
Старый 24.06.2014, 10:36
Новичок на форуме
Отправить личное сообщение для ixen Посмотреть профиль Найти все сообщения от ixen
 
Регистрация: 08.04.2014
Сообщений: 6

Да, работает, если в переменную записать цифру явно, но если брать ее из куки, то не работает.
var last_cat=$.cookie('last_cat');

$( "#gruppa" ).accordion({
	collapsible: false,
	heightStyle: "content",
	animate: 250,
	active: last_cat
});

Видимо в переменной цифра хранится как строка. Но как ее преобразовать в цифру?
Ответить с цитированием
  #8 (permalink)  
Старый 24.06.2014, 10:46
Новичок на форуме
Отправить личное сообщение для ixen Посмотреть профиль Найти все сообщения от ixen
 
Регистрация: 08.04.2014
Сообщений: 6

Сообщение от ixen Посмотреть сообщение
Видимо в переменной цифра хранится как строка. Но как ее преобразовать в цифру?
Спасибо за помощь! parseInt помог
Ответить с цитированием
  #9 (permalink)  
Старый 24.06.2014, 10:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

ixen,
active: +last_cat||2
Ответить с цитированием
  #10 (permalink)  
Старый 24.06.2014, 11:03
Новичок на форуме
Отправить личное сообщение для ixen Посмотреть профиль Найти все сообщения от ixen
 
Регистрация: 08.04.2014
Сообщений: 6

Сообщение от рони Посмотреть сообщение
ixen,
active: +last_cat||2
Спасибо, так лучше и быстрее!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать значение select из формы в переменную javascript 2Step Общие вопросы Javascript 2 11.03.2014 23:11
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как c функцией .ajax() передать несколько значений в php? Faab jQuery 11 19.11.2013 12:03
Передать js переменную в php посредством ajax wayzer Элементы интерфейса 17 31.12.2012 14:41
Как обозначить переменную выбранную в FileChooser? woo_hoo Общие вопросы Javascript 4 03.07.2008 12:58