2012-01-10 4 views
157

я это a, и я не знаю, что мне нужно вставить в «OnMouseOver» так, что курсор изменится на указательный палец, как обычная ссылка:изменить курсор на указатель пальца

<a class="menu_links" onclick="displayData(11,1,0,'A')" onmouseover=""> A </a> 

I прочитайте где-нибудь, что мне нужно поставить:

onmouseover="cursor: hand (a pointing hand)" 

Но это не работает для меня.

Плюс Я не уверен, что это считается JavaScript, CSS или просто HTML.

+0

Это css, а событие onmouseover - событие javascript. – Scott

+0

Вы не ставите css прямо в onmouseover = "". Кроме того, курсор: рука, зависающая по вашей ссылке, должна быть действием по умолчанию. Если этого не происходит, может возникнуть другая проблема. – Tank

+1

Возможный дубликат [как установить стиль курсора на указатель ссылок без hrefs] (http://stackoverflow.com/questions/2409836/how-to-set-cursor-style-to-pointer-for-links-without- hrefs) –

ответ

331
<a class="menu_links" onclick="displayData(11,1,0,'A')" onmouseover="" style="cursor: pointer;"> A </a> 

Это CSS.

Или в таблице стилей:

a.menu_links { cursor: pointer; } 
+4

большое спасибо –

+1

просто маленькая опечатка - 'cursor: pointer;'. Я попытался отредактировать сообщение, но он попросил изменить как минимум 6 символов, я думаю. Кроме того, спасибо! –

+2

После тестирования этого, похоже, необходимо иметь как onmouseover = "" AND style = cursor: pointer; ".Если у вас есть только тег стиля, курсор указателя указателя будет исчезать/по умолчанию стандартным указателем после взаимодействия с одним кликом. Хороший пост Скотт, спасибо. – DnfD

37

Вы можете сделать это в CSS:

a.menu_links { 
    cursor: pointer; 
} 

Это на самом деле поведение по умолчанию для ссылок. Вы должны либо каким-то образом переопределить его в другом месте вашего CSS, либо нет атрибута href (он отсутствует в вашем примере).

+0

У меня нет href coz, я не хочу покидать страницу. его связь, которая запускает JS-функцию, и если я вставляю href = "#", она испортит ее и перезагружает неправильную страницу –

+2

@DvirLevy. Поэтому либо возвращайте false, либо используйте 'href =" # "' или просто используйте CSS как я показал вам ... –

3

Добавить атрибут href, чтобы сделать его действительным ссылка & return false; в обработчике события, чтобы предотвратить его появление;

<a href="#" class="menu_links" onclick="displayData(11,1,0,'A'); return false;" onmouseover=""> A </a> 

(Или сделайте displayData() возвращение ложным и ..="return displayData(..)

8

в Css записи

a.menu_links:hover{ cursor:pointer} 
17

Мне нравится использовать этот, если у меня есть только одна ссылка на странице:

onMouseOver="this.style.cursor='pointer'" 
7

Здесь это что-то классное, если вы хотите пройти лишнюю милю с этим. в URL-адресе вы можете использовать ссылку или сохранить изображение png и использовать путь. например:

url ('assets/imgs/theGoods.png');

ниже код:

.cursor{ 
    cursor:url(http://www.icon100.com/up/3772/128/425-hand-pointer.png), auto; 
} 

Так что это будет работать только под размером 128 X 128, немного больше и привычка изображения нагрузки. Но вы можете практически использовать любое изображение, которое хотите! Это будет считаться чистым css3 и некоторым html. все, что вам нужно сделать в html, - это

<div class='cursor'></div> 

и только в этом div этот указатель покажет. Поэтому я обычно добавляю его в тег body.

4

Я думаю, что «лучший ответ», хотя и программно точный, на самом деле не отвечает на поставленный вопрос. в вопросе спрашивается, как изменить указатель в событии mouseover. Я вижу сообщения о том, как может быть ошибка, где-то не отвечает на вопрос. В принятом ответе событие mouseover пусто (onmouseover=""), и вместо этого включена опция стиля. Не понимаю, почему это было сделано.

Не может быть ничего неправильного в связи с запросом. Рассмотрим следующий HTML:

<a id=test_link onclick="alert('kinda neat);">Click ME!</a> 

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

ответ разыскивается за это (который был размещен на другой):

<a id=test_link onclick="alert('Nice!');" 
     onmouseover="this.style.cursor='pointer';">Click ME!</a> 

Однако это ... кошмар, если у вас есть много из них, или использовать такого рода вещи во всем место и решите сделать какое-то изменение или наткнуться на ошибку. лучше сделать класс CSS для него:

a.lendhand { 
    cursor: pointer; 
} 

затем:

<a class=lendhand onclick="alert('hand is lent!');">Click ME!</a> 

Есть много других способов, которые были бы, возможно, лучше, чем этот метод. DIV s, BUTTON s, IMG s, и т. Д. Может оказаться более полезным. Однако я не вижу вреда в использовании <a>...</a>.

jarett.

1

Решение через чистый CSS как указано в ответе, отмеченное как лучшее не подходит для этой ситуации.

В примере в этом разделе нет обычного статического атрибута href, это вызов только JS, поэтому он не будет ничего делать без JS.

Так что полезно включать указатель только с помощью JS. Таким образом, решение

onMouseOver="this.style.cursor='pointer'" 

как упомянуто выше (но я не могу комментировать там) является лучшим вариантом в этом случае. (Но да, вообще, для обычных ссылок, не требующих JS, лучше работать с чистым CSS без JS.)

Смежные вопросы