| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Клик мышью, определить над каким обьектом |
| Автор: Sl@va 1.2.2005, 22:30 |
| Здравствуйте ! Имеется такая задача. Я хочу сделать, чтобы при навадении курсора например на ссылку и при нажатии правой кнопки мыши открывалось контекстное меню, которое тоже сделано на javascript. В этом меню будет пункт "Копировать ссылку". Выбрав этот пункт запускается функция, которая как раз и копирует сам url адрес этой ссылки в буфер обмена. Само контекстное меню на javascript я сделал. Как скопировать текст в буфер обмена, покопаясь в инете нашел парочку примеров. Но вот как сделать функцию, которая бы определяла что курсор в момент вызова контекстного меню находится над ссылкой и считывала ее Url, представляю только очень поверхностно. Буду очень благодарен если подскажете. Заранее спасибо. |
| Автор: sergejzr 1.2.2005, 22:44 | ||
| Следует определить ссылке событие onclick. Или обрамить текст тэгом span и ему определить onclick.
|
| Автор: Sardar 2.2.2005, 01:42 |
| Можно ловить mouseover на документе и сохранять где нибудь над кем провели мышью. В ИЕ это srcElement, в Mozilla это target. При самом клике можно опрашивать переменную. Это должно работать универсально для всех обьектов без прописывания им особых событий. Но если речь идёт только о сылках, то лучше перебрать их и поставить на них клик, как сказал sergej.z. |
| Автор: Sl@va 2.2.2005, 16:59 |
| А не подскажете, как будет примерно выглядеть код для чтения url адресы ссылки ? |
| Автор: sergejzr 2.2.2005, 17:05 | ||
|
| Автор: Sl@va 2.2.2005, 20:03 |
| Ок! Спасибо ! |
| Автор: Sl@va 2.2.2005, 21:16 | ||
Я тут с этой проблемкой немного разобрался. Но вот как сделать так, чтобы каждый раз не всатвлять между тегами <A> вызов обработчика onmouseover (<a href="http://site1.com" onmouseover=f(this) >1 site</a>), а сделать эту програмку универсальной для всех ссылок на странице. У меня чегото никак не получается передать "(this)" функции "f", получается какаято ерунда. Приведенный ниже код работает, но при наведении на ссылку выводит вместо реального адреса ссылки "undefined"
|
| Автор: Zorro 2.2.2005, 22:05 | ||||
| А если просто сразу после загрузки страницы обойти все ссылки и прописать у них onmouseover. Функция:
Код, который нужно расположить в самом конце страницы (перед закрывающим body):
|
| Автор: Sl@va 2.2.2005, 22:11 |
| А какой код в конце ? Добавлено @ 22:12 Ой, извеняюсь. Все увидел. Первый раз браузер почемуто его не отобразил. Сейчас попробуем ... |
| Автор: Sl@va 2.2.2005, 22:27 |
| Неа, тоже самое. Вместо реального адреса ссылки печатаен "Undefined" |
| Автор: Sardar 2.2.2005, 23:17 | ||||
| Sl@va есть порой вещи, в которые трудно поверить Вот этот код должен работать:
Твоя задача выбирать когда потребудется всё необходимое из lastlink если он не равен null. |
| Автор: Aliance 2.2.2005, 23:26 | ||||||
IE only
Бред
|
| Автор: Sl@va 2.2.2005, 23:33 | ||
| Спасибо за помощь! Обязательно возму ваш пример себе на заметку. Как говорится если долго мучиться, что нибудь получиться. Вот результат моей трехчасовой деятельности:
Наконец то это заработало |
| Автор: Sardar 2.2.2005, 23:37 | ||
Aliance следи за выражениями. Второе, проверяй что говоришь, хотя бы запусти, а то на глазок можно попась в некрасивую ситуацию как сейчас, ибо ты не прав Sl@va твой код IE only, посмотри на примеры выше. |
| Автор: Sl@va 3.2.2005, 00:40 |
| Ок, спасибо, на счет кода я это учту. |