Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.12.2014, 19:06
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

Передать переменную не вызывая функцию
Здравствуйте, уважаемые! Сразу к делу:
Есть 2 кнопки:
<div onclick="function1();">Кнопка 1</div>
<div onclick="function2();">Кнопка 2</div>

Есть 2 функции:
Первая скрывает div с id="id1" и отображает div с id="id2"
function function1()
{
document.getElementById('id1').style.display = 'none';
document.getElementById('id2').style.display = 'block';
}

Вторая наоборот - скрывает div с id="id2" и отображает div с id="id1"
function function2()
{
document.getElementById('id2').style.display = 'none';
document.getElementById('id1').style.display = 'block';
}

Необходимо чтобы при нажатии на Кнопку 2 было известно была ли выполнена function1()

Пробывал так:

function function1(temp)
{
if (temp == 1)
{
document.getElementById('id1').style.display = 'none';
document.getElementById('id2').style.display = 'block';
};
}

function function2()
{
document.getElementById('id2').style.display = 'none';
document.getElementById('id1').style.display = 'block';
var peremennaya = '1';
function1(peremennaya);
}

Но при нажатии на Кнопку 2 сразу срабатывает function1().
Если не трудно, подскажите как сделать чтобы переменая попадала в фунцию function1, но функция вызываласть только по onclick на кнопке?
Ну или может есть иной способ определить при нажатии на Кнопку 2 была ли выполнена function1()
Заранее огромное спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 18.12.2014, 22:07
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

<!doctype html>
  <html lang="ru">
    <head>
      <meta charset="utf-8">
      <script type="text/javascript">

function function1() {
  // показывает, что эту функцию уже вызывали
  function1.executed = true;
  document.getElementById('id1').style.display = 'none'; 
  document.getElementById('id2').style.display = 'block';

  if(function1.executed) {
     document.getElementById('id1').innerHTML = 'Переменная присвоенная в function2: ' + function1.variable;
  }
};

// показывает, что function1 ещё не выполняли
function1.executed = false;

// чтобы переменая попадала в фунцию function1
function1.variable = null;

function function2() {
  // Сюда присвоить значение переменной и будет доступ в function1 
  function1.variable = 'Any text';
  document.getElementById('id2').style.display = 'none'; 
  document.getElementById('id1').style.display = 'block';
}
      </script>
    </head>
    <body>
      <button onclick="function1(); ">Кнопка 1</button>
      <button onclick="function2(); ">Кнопка 2</button>
      <div id="id1" style="width: 20%; height: 50%; position: absolute; top: 50px; left: 20%; background: #ff8080;">#id1</div>
      <div id="id2" style="width: 20%; height: 50%; position: absolute; top: 50px; left: 60%; background: #80ff80;">#id2</div>
    </body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 21.12.2014, 23:18
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

ОГРОМНОЕ СПАСИБО!
Помогли! Очень признателен!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
передать переменную в функцию B1ackgh0st AJAX и COMET 25 29.01.2014 22:58
Как передать переменную в другую функцию adder-vb jQuery 3 31.01.2013 14:29
Flot Как передать переменную в функцию отрисовки точки на графике Ren jQuery 0 20.06.2012 14:16
setInterval как передать переменную в функцию kamushek Общие вопросы Javascript 6 02.09.2011 23:53
как передать переменную в функцию Virgile Общие вопросы Javascript 2 08.08.2010 22:50