0

次のコードを使用して、HTML データ属性にアクセスしています。

HTML

<p class="add-favorites-to-list">
  <a href="#" data-baskettype="order"><img src="/style/icons/cart_add.png"> Test1</a>
  <a href="#" data-baskettype="quote"><img src="/style/icons/calculator_add.png"> Test2</a>
</p>

JS

$(document).ready(function() {
  $('.add-favorites-to-list').show();
  $('.add-favorites-to-list a').click(function() {
    alert($(this).data('baskettype'));
    return false;
  });
});

CSS

.add-favorites-to-list { display: none; }

例: http://jsfiddle.net/mR8gK/1/

これは jsFiddle では正常に動作しますが、私のサイトでは (同じコードと同じブラウザーを使用して) 動作しません。私はで取得undefinedalert()ます。

jQueryが要素を見つけたかどうかを確認しましたが、それは次の理由console.log($(this).html());によるものです。要素の内容を示しています。

そのコードが私のサイトでは機能しないが、jsFiddle では機能する (明らかな) 理由はありますか?

4

1 に答える 1

5

実行している jQuery のバージョンは何ですか? 下にドロップすると1.4.4、未定義として返されるためです。

于 2011-07-18T12:37:22.597 に答える