Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: как сделать Return переменную из each?

Сообщения:  [1-10]   [11-14] 

 
 автор: confirm   (29.11.2013 в 07:51)   письмо автору
 
   для: Sfinks   (29.11.2013 в 00:32)
 

Объявление переменной к замыканию отношения не имеет.

  Ответить  
 
 автор: Sfinks   (29.11.2013 в 00:32)   письмо автору
 
   для: confirm   (29.11.2013 в 00:07)
 

там, где переменная объявлена выше функции.

P.S. я может и не по науке понимаю значение термина, но работает четко

  Ответить  
 
 автор: confirm   (29.11.2013 в 00:07)   письмо автору
 
   для: Sfinks   (29.11.2013 в 00:01)
 

И где тут замыкание?

  Ответить  
 
 автор: Sfinks   (29.11.2013 в 00:01)   письмо автору
 
   для: makigo   (28.11.2013 в 12:40)
 

не используйте return. используйте замыкания:
var sside = '';
$('.side a').on("click", function() { 
sside = $(this).attr('id'); 
}); 
// а тут sside будет:
alert (sside);

  Ответить  
 
 автор: confirm   (28.11.2013 в 15:13)   письмо автору
 
   для: Deed   (28.11.2013 в 14:47)
 

Чушь зачем пороть?

http://jsbin.com/owunOvOj/2/edit

Да объявлять, это не означает (а тем более не известно как надо) после загрузки страницы. И как всегда, простое превращаете в навороты.

  Ответить  
 
 автор: Deed   (28.11.2013 в 14:47)   письмо автору
 
   для: confirm   (28.11.2013 в 14:44)
 

Эквивалентность попросил прописать парсер этого фидла.

  Ответить  
 
 автор: confirm   (28.11.2013 в 14:44)   письмо автору
 
   для: Deed   (28.11.2013 в 14:32)
 

Даже обязательно sside==='' ?

  Ответить  
 
 автор: Deed   (28.11.2013 в 14:32)   письмо автору
 
   для: makigo   (28.11.2013 в 12:40)
 

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

  Ответить  
 
 автор: confirm   (28.11.2013 в 13:12)   письмо автору
 
   для: makigo   (28.11.2013 в 12:40)
 

Еще раз повторяю:

писать $('.side a') можно, но лучше об этом забыть, и указывать всегда перед именем стиля и имя тега, к которому обращаетесь. Если, например, вы обращаетесь к параграфу со стилем side, значит надо писать $('p.side a').on(....

Обработчик события в jQuery возвращает DOM-объект, а это значит, что заставлять jQuery ковыряться в объектах DOM ради того, чтобы получить атрибут этого объекта, это и расточительно и глупо. Я не сразу это исправил, потом, но посмотрите выше - вот так надо:

var sside = this.id;

Что касается вернуть. var name = value, это не возврат значения, а установка переменной и ее значения. Если вам нужно обратиться потом к этой переменной из других функций, то устанавливайте ее как глобальную - не указывайте перед именем переменной ключевое слово var. Либо заранее вне обработчиков и функций просто объявите эту переменную:

var sside;

а в функциях и обработчиках можете обращаться к ней и изменять ее значение. Возврат значения, это все таки иное действие.

  Ответить  
 
 автор: makigo   (28.11.2013 в 12:40)   письмо автору
 
   для: confirm   (28.11.2013 в 12:16)
 

Спасибо большое.
Так работает.
Только всеравно не могу получить sside снаружи функций.

написал так:

$('.side a').on("click", function() {
var sside = $(this).attr('id');
return sside;
});

// а тут у меня нету sside

  Ответить  

Сообщения:  [1-10]   [11-14] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования