Javascript.RU

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

глобальная переменная
помогите разобраться с проблемой...
есть код:
var id;
              $('#iPhone').click(function(){

                   window.id=($(this).attr("id"));
                 
              });

              $('#Blackberry').click(function(){

                  window.id=($(this).attr("id"));
                
              });
              alert("id = "+id);

выводит сразу же alert и undefined, а мне нужно чтоб выводилось по нажатию на тот или иной div.
Как это реализовать???
Ответить с цитированием
  #2 (permalink)  
Старый 19.12.2012, 13:35
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

var id;
              $('#iPhone').click(function(){

                   window.id=($(this).attr("id"));
                 alert("id = "+id);
              });

              $('#Blackberry').click(function(){

                  window.id=($(this).attr("id"));
                alert("id = "+id);
              });
Ответить с цитированием
  #3 (permalink)  
Старый 19.12.2012, 13:42
Новичок на форуме
Отправить личное сообщение для dubovitskii Посмотреть профиль Найти все сообщения от dubovitskii
 
Регистрация: 19.12.2012
Сообщений: 5

это я делал, но мне нужно по полученной id дальше вне этих двух функций писать условия
Ответить с цитированием
  #4 (permalink)  
Старый 19.12.2012, 13:44
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

var id;
              $('#iPhone').click(function(){

                  id = $(this).attr("id");
                              
              });

              $('#Blackberry').click(function(){

                  id = $(this).attr("id");

              });


после срабатывания клика по одному из дивов твой id поменяется
Ответить с цитированием
  #5 (permalink)  
Старый 20.12.2012, 08:53
Новичок на форуме
Отправить личное сообщение для dubovitskii Посмотреть профиль Найти все сообщения от dubovitskii
 
Регистрация: 19.12.2012
Сообщений: 5

спасибо
Ответить с цитированием
  #6 (permalink)  
Старый 20.12.2012, 11:17
Новичок на форуме
Отправить личное сообщение для dubovitskii Посмотреть профиль Найти все сообщения от dubovitskii
 
Регистрация: 19.12.2012
Сообщений: 5

но все равно id не отрабатывает вне функции
Ответить с цитированием
  #7 (permalink)  
Старый 20.12.2012, 11:23
Новичок на форуме
Отправить личное сообщение для dubovitskii Посмотреть профиль Найти все сообщения от dubovitskii
 
Регистрация: 19.12.2012
Сообщений: 5

вот к примеру
var id;
	              $('#iPhone').click(function(){
	                  id = $(this).attr("id");
	              });
	              $('#Blackberry').click(function(){
                          id = $(this).attr("id");
                      });

                      if(id=="iPhone"){alert("id = "+id);}


ничего не выводит...
Ответить с цитированием
  #8 (permalink)  
Старый 20.12.2012, 12:28
Аспирант
Отправить личное сообщение для Sanda Посмотреть профиль Найти все сообщения от Sanda
 
Регистрация: 12.10.2012
Сообщений: 90

А почему должен выводить?
Советую разобраться с тем, что делает функция $().click. И в какой момент выполняется тот код, который в ней написан. И, соответственно, в какой момент надо вызывать alert, чтобы значение в переменной id уже было задано.
В данный момент код говорит "когда юзер кликнет на iPhone или Blackberry, запиши ID кнопки. Но сразу же, не дожидаясь его клика, проверь-ка, не лежит ли уже в переменной id значение "iPhone". И, если оно магическим образом там появилось (хотя клика-то ещё наверняка не было), выведи его alert-ом".
Ответить с цитированием
  #9 (permalink)  
Старый 20.12.2012, 15:58
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

Сообщение от dubovitskii
if(id=="iPhone"){alert("id = "+id);}
не выводит, потому что это события отрабатывает раньше, чем события клика и даже, если вы кликнете, он все равно ниче не выведет, потому что в момент когда вы кликнете этот код уже отработает
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
.trigger() и глобальная переменная madicom jQuery 1 25.12.2011 17:53
Глобальная переменная в функции Орёл Общие вопросы Javascript 1 18.12.2010 20:21
Глобальная переменная vah-smile Общие вопросы Javascript 3 06.07.2010 12:41
Глобальная переменная, считать правильнае значение в функции konstantinopol Общие вопросы Javascript 11 01.05.2010 23:28
Глобальная переменная и массив mikeles Events/DOM/Window 2 21.11.2009 18:37