| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Перехватить click на flash ролике |
| Автор: dimych83 18.3.2008, 09:23 | ||
| Добрый день! Мне надо вставить на главную страницу сайта флэш-ролик swf и повесить на него ссылку, чтобы при нажатии пользователь попадал на другую страницу. В соответствии с исходниками одного из примеров сделал следующее:
но это не работает, нет никакой реакции на нажатие. На сайте откуда этот исходник взят - все нормально. Подскажите в чем проблема может быть?! Может быть обработчик события задается как один из парамтеров объекта? |
| Автор: IDVsbruck 18.3.2008, 13:28 | ||||||||
1. указан id, а ссылка идет по имени. Ссылаться надо так:
2. определение "чужой" функции происходит так:
или так:
второй случай обычно используется, если надо вызвать внешнюю функцию с параметрами. 3. идеологически правильнее помещать флешку (object) в div и обрабатывать событие, приходящее в div, а затем, чтобы оно не передавалось по иерархии ниже, "обнулять" его:
хотя это по желанию 4. а если я нажимаю на флешке и, не отпуская, хочу переместить мышь за пределы флешки? - твой код этого не позволяет, это некорректно к пользователю. Обрабатываться должен не onmousedown, a onclick. На практике событие onmousedown обычно используют для установки флагов для последующей реакции мыши. |
| Автор: dimych83 18.3.2008, 14:06 |
| Воспользовался 2ым вариантом: <script language="JavaScript"> document.getElementById("howto").onclick = OpenUrl(); </script> То же самое, IE никаких ошибок не выдает, но и никак на нажатие не реагирует. |
| Автор: IDVsbruck 18.3.2008, 15:47 |
| Ну ты даешь! Внимательнее надо относиться к коду!!! OpenUrl() - это результат функции (сначала ее вызов, а потом получение результата), OpenUrl - ссылка на функцию (простыми словами, чтобы событие переадресовывало свою реакцию на выполнение нужной функции). Если ты назначаешь событию функцию, то скобки указывать не надо. Еще для себя поставь alert в своей функции для дебага - приходит ли событие по нажатию на кнопку (прдн, если ты так и делаешь). |
| Автор: dimych83 19.3.2008, 05:25 | ||
| Я с JavaScript первый раз сталкиваюсь за последние года 4 Все равно косяк - никакой реакции. Вот весь кусок кода, который к флэшке относится:
Сама ф-ция OpenUrl нормально отрабатывает - проверял на кнопке. Еще один момент - я редактирую страницу через NetCat, может это как-то влияет? |
| Автор: Itsys 19.3.2008, 07:20 | ||||
А причем здесь
насколько я знаю писать нало так
|