カーソルスタイルを、hrefなしのリンクのポインターに設定する方法


135

JavaScript呼び出しを行うため<a>href属性のない多くのhtmlタグがありますonclick。これらのリンクには、カーソルのポインタスタイルはありません。彼らはテキストスタイルのカーソルを持っています。

href属性を使用せずに、リンクのカーソルスタイルをポインターに設定するにはどうすればよいですか?

href = "#"を追加できることはわかっています。これはhtmlドキュメントの多くの場所にあり、href属性を使用せずにリンクのカーソルスタイルポインターを作成する方法を知りたいです。


さて、リンクと言うと、「<a id="do_some_javascript"> test </a>」という意味ですか?それとも、いくつかのJavaScriptを実行するのは単にスパンまたはdivタグですか?
Alxandr

回答:


211

あなたのCSSファイルにこれを追加してください...

a:hover {
 cursor:pointer;
}

CSSファイルがない場合は、これをHTMLページのHEADに追加します

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

また、JavaScriptの最後にfalseを返すことにより、href = ""属性を使用することもできます。

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

これには多くの理由があります。SEOまたは人々がJavaScriptを持っていない場合は、href = ""が機能します。例えば

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

@http ://www.alistapart.com/articles/behavioralseparationを参照

編集:彼が言及している@BalusCの回答に注目する価値:hoverは、OPのユースケースでは必要ありません。他のスタイルは:hoverセレクターで追加できますが。


5
:hoverの使用は必須ではなく、hrefなしのリンクでの動作は保証されません。
Alxandr

それがうまくいかない場所を想像することはできません。これは学習に適した方法です。href属性を持つリンクと同様に、背景の変更、下線、色などの他の追加動作を設定することをお勧めします。
ロス

1
それは、私がこれを使用するのでしばらくしているが、<IE6のためにそれは価値が特徴のスタイルへのリンクに条件付きコメントを追加するかもしれないcursor: hand;
デビッドモニカ回復言う

条件付きコメントは必要ありません-.myStyle {cursor:hand; cursor:pointer;}を実行するだけです-新しいブラウザはとにかくそれを理解しないため、hand属性を無視します。また、IE6は引き続きポインタを理解します-ハンドはie5以下です。
easwee

ただし、a自体を使用すると、問題が発生する可能性があります。特にIEでは、return falseを追加してもOnBeforeUnloadがトリガーされるためです。javascript:void(0);へのリンクも OnBeforeUnloadが呼び出されます。私はこの問題で職場で大きな頭痛がしました...
Alxandr

16

これをグローバルCSSスタイルに追加するだけです。

a { cursor: pointer; }

これにより、ブラウザのデフォルトのカーソルスタイルに依存しなくなります。


動作しません。カーソルがChrome textではなくに変わりますpointer
ZhekaKozlov 2017


6

これは、特定のobject(myObject)にカーソルを合わせると、カーソルが矢印から手に変わる方法です。

myObject.style.cursor = 'pointer';

1
まず、SOへようこそ、ルー!投稿/回答するときは、できるだけ情報を提供し、コード例をフォーマットすることを忘れないでください(私があなたのために行ったように)。
ブライアン

4

それらすべてに共通のクラス(リンクなど)を与えます。次に、cssファイルに追加します。

.link { cursor: pointer; }

または、@ mxmissileが示唆するように、style = "cursor:pointer;"でインライン化します。


4

次のCSSでクラスを作成し、onclickイベントでタグに追加します。

cursor:pointer;

3

cursor: pointer私が正しく覚えているならCSSを使ってください。

CSSファイルのいずれか:

.link_cursor
{
    cursor: pointer;
}

次に、リンクカーソルを置きたい要素に次のHTMLを追加しますclass="link_cursor"(推奨される方法)。

または、インラインCSSを使用します。

<a style="cursor: pointer;">


0

これは私のために働きました:

<a onClick={this.openPopupbox} style={{cursor: 'pointer'}}>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.