Javascript нажмите кнопку + показать

У меня есть большая красная кнопка, и я пытаюсь использовать JavaScript для выполнения следующих действий: -

  1. OnMouseDown изменить изображение, чтобы кнопка выглядела нажатой
  2. OnMouseUp вернуться к исходному изображению и показать скрытый div

Я могу заставить работать изменения изображений onMouse Down и onMouseUp.

Я также могу получить скрытый div, чтобы показать с помощью OnClick

Проблема в том, что я не могу заставить все это работать вместе.

Как мне это сделать?

Кстати, я уверен, что это очевидно, но я довольно плохо знаком с javascript, поэтому я ценю вашу помощь

10.12.2008 08:57:40
Спасибо! Вы, ребята, легенды - использовали немного каждого из ответов, и теперь это приносит удовольствие ... не могу объяснить, как я счастлив ... спасибо ТАК :)!
bobanderson 10.12.2008 12:11:21
3 ОТВЕТА
РЕШЕНИЕ

Вы можете использовать точки с запятой для разделения нескольких операторов сценария в событии:

<img src="..." alt="..."
  onmousedown="depressed();"
  onmouseup="undepressed(); revealDiv();" />

Кроме того, я считаю, что большинство браузеров поддерживают событие onclick:

<img src="..." alt="..."
  onmousedown="depressed();"
  onmouseup="undepressed();"
  onclick="revealDiv();" />

Поскольку вы сказали, что вы уже разобрались с каждой из трех частей в отдельности, я просто написал вызовы функций, которые вы можете заменить своим собственным кодом для каждого шага.

1
10.12.2008 18:34:56
Это точки с запятой (;), а не двоеточия (:)
Gareth 10.12.2008 10:25:07
Всегда лучше разметить по событиям ... поэтому лучший способ прикрепить события - это прикрепить их из сценария
Andreas Grech 11.12.2008 19:26:23

Трудно сказать, не видя ваш код, но я подозреваю, что пропущенное «верните истину»; оператор в конце обработчиков событий onclick или onmouseup.

0
10.12.2008 09:02:11

Никогда не рекомендуется прикреплять события к элементам с помощью нотации атрибутов непосредственно к тегу html-элемента.

Это гораздо лучше , практика отделить представление (будучи тонированное HTML) от контроллера (действия происходят)

Лучший способ прикрепить событие так:

<img id="abut" />

<script>
var thebutton = document.getElementById('abut'); //Retrieve the button from the page 
thebutton.onmousedown = depressed; //depressed is a function that you declare earlier on...here, you are just passing a reference to it
thebutton.onmouseup = function () {
    undepressed();
    revealDiv(); //Invoke the two functions when the 'onmouseup' is triggered'
};
</script>
0
11.12.2008 19:21:07