2012-01-10 59 views
157

Tôi có điều này a và tôi không biết rằng tôi cần phải chèn vào "onmouseover" để con trỏ sẽ thay đổi để con trỏ ngón tay như một liên kết thường xuyên:thay đổi con trỏ đến con trỏ ngón tay

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

tôi đọc một nơi nào đó mà tôi cần phải đặt:

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

Nhưng nó không làm việc cho tôi.

Plus Tôi không chắc chắn nếu điều này được coi là JavaScript, CSS hoặc chỉ HTML thuần túy.

+0

đó là css và sự kiện onmouseover là sự kiện javascript. – Scott

+0

Bạn không đặt css trực tiếp trong onmouseover = "". Ngoài ra, con trỏ: tay trong khi di chuột qua liên kết của bạn phải là hành động mặc định. Nếu điều này không xảy ra, có thể có một vấn đề khác trong tầm tay. – Tank

+1

bản sao có thể có của [cách đặt kiểu con trỏ thành con trỏ cho liên kết mà không có href] (http://stackoverflow.com/questions/2409836/how-to-set-cursor-style-to-pointer-for-links-without- href) –

Trả lời

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

Đó là css.

Hoặc trong một style sheet:

a.menu_links { cursor: pointer; } 
+4

cảm ơn bạn rất nhiều –

+1

chỉ là một lỗi đánh máy nhỏ - 'con trỏ: con trỏ;'. Tôi đã cố gắng chỉnh sửa bài đăng nhưng tôi đã yêu cầu sửa đổi ít nhất 6 ký tự mà tôi nghĩ. Bên cạnh đó, cảm ơn bạn! –

+2

Sau khi thử nghiệm này, có vẻ như nó cần thiết để có cả onmouseover = "" AND style = cursor: pointer; ".Nếu bạn chỉ có thẻ kiểu, con trỏ trỏ con trỏ sẽ biến mất/mặc định thành con trỏ chuẩn sau một lần nhấp chuột tương tác. Tốt đăng Scott, cảm ơn bạn. – DnfD

37

Bạn có thể làm điều này trong CSS:

a.menu_links { 
    cursor: pointer; 
} 

Đây thực sự là hành vi mặc định cho các liên kết. Bạn phải có cách nào đó ghi đè nó ở nơi khác trong CSS của bạn, hoặc không có thuộc tính href trong đó (nó bị thiếu trong ví dụ của bạn).

+0

tôi không có một href coz tôi không muốn rời khỏi trang. liên kết của nó kích hoạt chức năng JS và nếu tôi chèn href = "#", nó sẽ làm hỏng nó và tải lại trang sai –

+2

@DvirLevy - Vì vậy, trả về false và sử dụng 'href =" # "' hoặc chỉ sử dụng CSS như tôi đã chỉ cho bạn ... –

3

Thêm thuộc tính href để đặt liên kết hợp lệ thành & return false; trong trình xử lý sự kiện để ngăn không cho điều hướng gây ra điều hướng;

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

(Hoặc làm displayData() trở lại sai và ..="return displayData(..)

8

trong css ghi

a.menu_links:hover{ cursor:pointer} 
17

Tôi thích sử dụng cái này nếu tôi chỉ có một liên kết trên trang:

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

đây là một cái gì đó mát mẻ nếu bạn muốn đi thêm dặm với điều này. trong url, bạn có thể sử dụng liên kết hoặc lưu hình ảnh png và sử dụng đường dẫn. ví dụ:

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

dưới đây là các mã:

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

Vì vậy, điều này sẽ chỉ làm việc theo kích thước 128 X 128, bất kỳ lớn hơn và sẽ không ảnh tải. Nhưng bạn thực tế có thể sử dụng bất kỳ hình ảnh nào bạn muốn! Điều này sẽ được xem xét tinh khiết css3, và một số html. tất cả những gì bạn phải làm trong html là

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

và chỉ trong div đó, con trỏ đó sẽ hiển thị. Vì vậy, tôi thường thêm nó vào thẻ body.

4

Tôi nghĩ rằng "câu trả lời hay nhất" ở trên, mặc dù có lập trình chính xác, không thực sự trả lời câu hỏi được đặt ra. câu hỏi sẽ hỏi cách thay đổi con trỏ trong sự kiện di chuột qua. Tôi thấy các bài đăng về cách một người có thể gặp lỗi ở đâu đó không trả lời câu hỏi. Trong câu trả lời được chấp nhận, sự kiện di chuột trống (onmouseover="") và tùy chọn kiểu, thay vào đó, được bao gồm. Baffling lý do tại sao điều này đã được thực hiện.

Không có gì sai với liên kết của người điều tra. hãy xem xét html sau:

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

Khi con trỏ chuột qua liên kết này, con trỏ sẽ hoạt động giống như con trỏ di chuột qua văn bản thông thường. Người ta có thể không muốn điều này ... và như vậy, con trỏ chuột cần phải được nói để thay đổi.

câu trả lời được tìm kiếm cho là thế này (mà đã được đăng bởi khác):

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

Tuy nhiên, đây là một cơn ác mộng ... nếu bạn có rất nhiều trong số này, hoặc sử dụng hình thức này mà khắp nơi nơi và quyết định thực hiện một số thay đổi hoặc chạy vào một lỗi. tốt hơn để thực hiện một lớp CSS cho nó:

a.lendhand { 
    cursor: pointer; 
} 

thì:

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

có rất nhiều cách khác đó sẽ là, tranh cãi, tốt hơn so với phương pháp này. DIV s, NÚT s, IMG s, v.v ... có thể hữu ích hơn. Tuy nhiên, tôi thấy không có hại trong việc sử dụng <a>...</a>.

jarett.

1

Giải pháp qua CSS thuần túy như được đề cập trong câu trả lời được đánh dấu là tốt nhất không phù hợp với trường hợp này.

Ví dụ trong chủ đề này không có thuộc tính static href bình thường, nó chỉ gọi JS, vì vậy nó sẽ không làm gì nếu không có JS.

Vì vậy, chỉ nên bật con trỏ bằng JS. Vì vậy, giải pháp

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

như đã đề cập ở trên (nhưng tôi không thể nhận xét ở đó) là tốt nhất trong trường hợp này. (Nhưng có, chung, đối với các liên kết bình thường không yêu cầu JS, tốt hơn là làm việc với CSS thuần túy mà không cần JS.)

Các vấn đề liên quan