web-dev-qa-db-ja.com

無効になっているボタンを手にするカーソル変更を防止

重複の可能性:
無効にされたリンク上にjQueryマウスオーバー、カーソルを変更してクリックできないようにするにはどうすればよいですか?

ボタンがあり、その機能が不要または不可能な場合に無効にしようとしています。これはページ上の多くのボタンの1つであり、この特定のボタンを無効にしたいだけです。

私が探している効果は、灰色になっていてクリックできないこと、そしてボタンの上にマウスを置いたときにマウスポインターがハンドポインターに変化しないことです。

私は最初の2つの目標で成功しましたが、3番目の目標をどのように実現するかはわかりません。検索したところ、この動作を全体的に無効にするための提案がありましたが、特定のボタンについての提案はありませんでした。

ここに私が持っているものがあります。

if(buttonIsDisabled)
{
    var btnid ="#button"+index;
    $(btnid).attr("disabled","disabled").fadeTo(500,0.2);
}

これにより、ボタンは正常にクリックできなくなり、フェードアウトしますが、FirefoxとChrome=にカーソルを合わせると、依然として手のアイコンが表示されます。IE8(これもサポートする必要があります)は、正しく手を無効にし、カーソル。

ChromeおよびFirefoxでIEの動作を強制する方法に関する提案はありますか?

18
Ben McCormick

「カーソル」ルールを「デフォルト」の値に設定できます。 jQueryでは css メソッドを使用できます。

$(btnid).css("cursor", "default");

すでに$(btnid)を使用しているので、次のように呼び出しをチェーンできます。

$(btnid).attr("disabled","disabled").css("cursor", "default").fadeTo(500,0.2);
26
Seth Flowers

ボタンにcursor: defaultのスタイルを設定することもできます。

5
Shawn Steward

次のようにCSSを設定できます:

$(btnid)
  .attr("disabled","disabled")
  .css('cursor','default')
  .fadeTo(500,0.2);
5
A. Wolff