3

前の別の質問で述べたように、私はコンテンツを表示し、ハッシュタグに基づいてボタンを強調表示するシステムを持っています。これはほとんどの部分で正常に機能していますが、ボタンにカーソルを合わせると、アクティブ状態が失われます。

これが問題の[実例][1]です。

私は試しまし.hover(function() {return false;});たが、残念ながらこれはうまくいきませんでした(私はそれが期待していなかったと思いますが...!)。また、Firefoxでは完璧だったボタンを無効にして(次に別のボタンをクリックしたときに再度有効にして)試しましたが、IE7ではテキストがグレー表示されていました。

ヘルプや提案をいただければ幸いです、ありがとうございます:)

4

2 に答える 2

4

ボタンが#を送信しているところから始めると、リンクは別のページに移動しませんが、不要なスクロールが生成されます。あなたはこのようにそれを避けるべきです。

$('#showScarringReports').click(function(ev){ ev.preventDefault(); });

その後、アクティブ状態を維持したい場合は、イベントハンドラーを無効にして、アクティブ状態から元の状態に戻すことができます。例として最初のものを使用します。

$('#showScarringReports').unbind('mouseout keyup mouseup hover');

アクティブになるとアクティブのままになり、アクティブ状態を削除してから、ボタンからクラスui-state-hoverを削除します。

于 2012-04-14T21:00:58.167 に答える
0

他の解決策は私にはうまくいかなかったので、私はこれを使わなければなりませんでした:

$('#my-button')
    .button({disabled:true})
    .removeClass('ui-state-disabled')
    .addClass('ui-state-active') //permanently pressed
    .addClass('ui-state-hover')  //or permanently highlighted
;
于 2016-02-02T15:30:46.343 に答える