Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   onclick в ссылке и меняющийся курсор (https://javascript.ru/forum/misc/2765-onclick-v-ssylke-i-menyayushhijjsya-kursor.html)

chibuzor 09.02.2009 02:03

onclick в ссылке и меняющийся курсор
 
Здравствуйте!
Имеется такой код:
<a href="#" onclick="code(); return false;">Ссылка</a>

Естественно, при наведении на ссылку дефолтный курсор (он же стрелка) меняется на тип pointer (рука с пальцем). После нажатия на ссылку, курсор почему-то становится дефолтным до тех пор, пока мы не подвигаем мышью (Opera), либо пока не уведем его с ссылки и не наведем снова (Mozilla).
Если в href вставить javascript:// вместо решетки, Опера делает наоборот - сначала курсор не меняется, но стоит сдвинуть его хоть на пиксел, становится дефолтным. В Мозилле все по-прежнему.
В Safari указатель не меняется. Что можно сделать, чтобы курсор не менялся после нажатия на ссылку (как в Safari) ни в одном из браузеров?

Kolyaj 09.02.2009 12:29

Не нужно никакой код в href писать, для этого onclick есть.

chibuzor 09.02.2009 13:43

Я только имел в виду такую конструкцию
<a href="javascript://" onclick="code(); return false;">

вместо
<a href="#" onclick="code(); return false;">

что никакой роли в решении вопроса не играет. Весь код и находится в onclick().

Я так понимаю, что решения нет, все пренебрегают этой мелочью? Даже гугл.

Kolyaj 09.02.2009 13:47

Если вы делаете ссылку, то она должна куда-то вести. Если никуда не ведет, то и ссылка не нужна
<span style="cursor: pointer;" onclick="code();"></span>

chibuzor 09.02.2009 20:58

Я понял, что Вы имеете в виду.
Соглашусь, что предложенное Вами решение более продвинутое, и я обязательно его возьму на вооружение, но, к сожалению, я наблюдаю абсолютно тот же эффект со сменой указателя, что и во втором своем примере, где <a href="javascript://"...>.
Меня посетила мысль... Дело в том, что я работаю под MacOS X, и, может быть, это такая особенность системы, а под Windows такого поведения курсора не наблюдается? Не имею возможности проверить...

chibuzor 09.02.2009 21:14

Вот здесь на форуме наблюдается аналогичная ситуация. На странице "Ответить в теме" в форме ввода сообщения справа колонка со смайлами. При наведении мышью на смайл появляется курсор pointer. При нажатии на смайл выполняется код (смайл вставляется в сообщение), после чего курсор меняется на default, и таковым остается до тех пор, пока мы не уберем его со смайла и не наведем на него опять. При этом onclick продолжает работать, то есть при нажатии код выполняется. Это у меня наблюдается в мозилле на маке.
Если не затруднит, скажите, наблюдается ли у Вас такой эффект?

Kolyaj 09.02.2009 21:37

Цитата:

Сообщение от chibuzor
скажите, наблюдается ли у Вас такой эффект?

Вроде нет.

Protos 09.02.2009 22:01

У спана не будет состояния focus, поэтому таким элементом управления невозможно воспользоваться с клавиатуры.

ZoNT 09.02.2009 22:46

Цитата:

Сообщение от Protos
У спана не будет состояния focus, поэтому таким элементом управления невозможно воспользоваться с клавиатуры.

Люди, давайте скинемся Протосу на мышку...

chibuzor 10.02.2009 11:22

Наконец-то появилась возможность попробовать, ни в одном из браузеров под win, что я проверил (IE, Opera, Mozilla) такого глюка не наблюдается! Инетерсно, что по этому поводу скажут мак-юзеры, если такие есть?
Спасибо всем, кто участвовал в дискуссии!


Часовой пояс GMT +3, время: 07:29.