-1

Webkit ブラウザーで属性値によって選択された要素でクリック イベントが無視されるという問題に遭遇しました。

明確にするために、関数をクリックイベントにバインドするのではなく、選択したイベントでクリックをトリガーしようとしています。

HTML

<div class="my_list">
    <a href="#thumb_1">Thumb O1</a>
    <a href="#thumb_2">Thumb O2</a>
    <a href="#thumb_3">Thumb O3</a>
</div>

jQuery

var my_var = 1;
$('.my_list a[href="#thumb_' + my_var + '"]').click();

イベントは Firefox で発生しますが、Safari や Chrome では発生しません。

また試した

var my_var = 1;
$('.my_list a[href="#thumb_' + my_var + '"]').trigger('click');

どんな助けでも大歓迎です、ありがとう。

編集

これを「本当の質問ではない」として締めくくることに投票した人は誰でも...そうでなければ明確にしてください。それで。

これが本当の質問であることを保証します。これは私が現在解決しようとしている実際の問題です。これにより、実際のクライアントが満足し、成果物を完成させた今、実際のお金を受け取ることができます。

4

2 に答える 2

1

Chrome で正常に動作しているようです: jsfiddle

var my_var = 1;
$('.my_list a[href="#thumb_' + my_var + '"]').click(function(){
    alert("you click thumb"+ my_var);
});

my_var を 1 に等しいと定義しているため、最初の "Thumb" のみがクリック ハンドラーにアタッチされます。

于 2013-05-02T20:56:13.017 に答える
1

http://jsfiddle.net/jKNXF/1/ご覧のとおり、javascript は期待どおりに動作します。アラートが表示された場合は、JavaScript がそのタグでクリック イベントをトリガーできたことを意味します。

ハッシュタグが URL に表示されることを期待していますか? location.hashその場合は、必要なものに設定してください。要素にスクロールしようとしている場合は、scrollTopメソッドを使用できます。 jQuery scroll to elementを参照してください。

于 2013-05-02T21:00:29.823 に答える