Cách đặt kiểu con trỏ thành con trỏ cho các liên kết mà không có href


135

Tôi có rất nhiều <a>thẻ html mà không có hrefthuộc tính để thực hiện onclickcác cuộc gọi javascript. Các liên kết này không có kiểu con trỏ của con trỏ. Họ có con trỏ kiểu văn bản.

Làm cách nào tôi có thể đặt kiểu con trỏ thành con trỏ cho các liên kết mà không sử dụng hrefthuộc tính?

Tôi biết tôi có thể thêm href = "#". Tôi có điều này ở rất nhiều nơi trong tài liệu html và muốn biết cách tạo con trỏ kiểu con trỏ cho các liên kết mà không cần sử dụng hrefthuộc tính.


Tạm biệt, khi bạn nói liên kết, bạn có nghĩa là "<a id="do_some_javascript"> kiểm tra </a>" không? Hoặc nó chỉ là một thẻ span hoặc div mà một số javascript?
Alxandr

Câu trả lời:


211

trong tập tin css của bạn thêm điều này ....

a:hover {
 cursor:pointer;
}

nếu bạn không có tệp css, hãy thêm tệp này vào đầu trang HTML của bạn

<style type="text/css">
 a:hover {
  cursor:pointer;
 }
</style>

ngoài ra, bạn có thể sử dụng thuộc tính href = "" bằng cách trả về false ở cuối javascript của bạn.

<a href="" onclick="doSomething(); return false;">a link</a>

Điều này tốt cho nhiều lý do. SEO hoặc nếu mọi người không có javascript, thì href = "" sẽ hoạt động. ví dụ

<a href="nojavascriptpage.html" onclick="doSomething(); return false;">a link</a>

@see http://www.alistapart.com/articles/behavioralseparation

Chỉnh sửa: Đáng chú ý câu trả lời của @ BalusC trong đó anh ta đề cập :hoverlà không cần thiết cho trường hợp sử dụng của OP. Mặc dù phong cách khác có thể được thêm với :hoverbộ chọn.


5
Sử dụng: hover là không cần thiết và nó không được đảm bảo để hoạt động trên các liên kết mà không có a href.
Alxandr

tôi không thể tưởng tượng nơi nó sẽ không hoạt động. Đây là một cách tốt để tìm hiểu, bạn có thể muốn có các hành vi thêm khác tương tự các liên kết với thuộc tính an href: thay đổi nền, gạch chân, màu sắc, et al.
Ross

1
Đã được một thời gian kể từ khi tôi sử dụng nó, nhưng đối với <IE6, có thể đáng để thêm một nhận xét có điều kiện để liên kết với các phong cách có tính năngcursor: hand;
David nói phục hồi Monica

Bạn không cần bình luận có điều kiện - chỉ cần làm .myStyle {con trỏ: tay; con trỏ: con trỏ;} - các trình duyệt mới hơn sẽ bỏ qua thuộc tính tay vì dù sao họ cũng không hiểu nó. Ngoài ra IE6 vẫn sẽ hiểu con trỏ - hand dành cho eg5 trở xuống.
Easwee

Sử dụng một trong chính nó có thể gây ra một số vấn đề mặc dù. Đặc biệt là trong IE vì chúng kích hoạt OnB BeforeUnload mặc dù bạn thêm return false; Ngay cả một liên kết đến javascript: void (0); khiến OnB BeforeUnload được gọi. Tôi đã rất đau đầu với vấn đề này tại nơi làm việc ...
Alxandr

16

Chỉ cần thêm nó vào phong cách CSS toàn cầu của bạn:

a { cursor: pointer; }

Bằng cách này, bạn không còn phụ thuộc vào kiểu con trỏ mặc định của trình duyệt nữa.


Không hoạt động. Con trỏ được thay đổi thành textthay vì pointertrong Chrome.
ZhekaKozlov


6

Đây là cách thay đổi con trỏ từ một mũi tên sang một bàn tay khi bạn di chuột qua một object(myObject) nhất định.

myObject.style.cursor = 'pointer';

1
Trước hết, chào mừng bạn đến với SO, Lou! Khi đăng / trả lời, vui lòng đảm bảo càng nhiều thông tin càng tốt và đừng quên định dạng các ví dụ mã của bạn (như tôi đã làm cho bạn).
Brian

4

Cung cấp cho họ tất cả một lớp chung (ví dụ liên kết). Sau đó thêm vào tập tin css:

.link { cursor: pointer; }

Hoặc như @mxmissile đã đề xuất, hãy thực hiện nội tuyến với style = "con trỏ: con trỏ;"


4

tạo một lớp với CSS sau và thêm nó vào thẻ của bạn với các sự kiện onclick:

cursor:pointer;

3

Sử dụng CSS cursor: pointernếu tôi nhớ chính xác.

Trong tệp CSS của bạn:

.link_cursor
{
    cursor: pointer;
}

Sau đó, chỉ cần thêm HTML sau vào bất kỳ yếu tố nào bạn muốn có con trỏ liên kết: class="link_cursor"(phương thức ưa thích.)

Hoặc sử dụng CSS nội tuyến:

<a style="cursor: pointer;">

1

Phiên bản góc cạnh:

<a (click)="action(); $event.preventDefault()" href="#">Action</a>

0

Điều này làm việc cho tôi:

<a onClick={this.openPopupbox} style={{cursor: 'pointer'}}>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.