0

jQuery qTip プラグインを使用して要素内のテキストを表示しようとしています。

テーブルには、さまざまなクラスのように複数のリンクがあります。リンク内のテキストは負のテキスト インデントで隠され、背景スプライトを使用してユニークに見えます。

<a href="#" class="spot_quote">Spot quote</a>

<a href="#" class="contract_quote">Contract quote</a>

これはjqueryがリンク内のテキストを取得するだけだと思いました:

$('.contract_quote, .spot_quote').qtip(
   {
       content: $(this).text() // Give it some content, in this case a simple string
   });

しかし、それは私が必要とする、または望む以上のものを返します。ここでは不要なので、title 属性を追加したくありません。

4

1 に答える 1

1

JavaScript にはブロックレベルのスコープがありません。つまりthis、ドキュメントを参照しています。各要素を参照するthisには、新しい関数を作成する必要があります。

$(document).ready(function() {  
  $('.contract_quote .spot_quote').each(function() {
    $(this).qtip({
     content: $(this).text();
    });
  });
});

とはいえ、title 属性が必要な場合でも、とにかく設定することをお勧めします。JavaScript で自動的に設定することは問題ありませんが、理想的ではありません。CMS(使用している場合)で設定する方が良いでしょう。何らかの理由でユーザー エージェントがリンクのタイトルを探している場合、ユーザー エージェントは人間ほど賢くないため、コンテンツと常に同じであっても、1 つある方がよいでしょう。とにかく、ほとんどの場合。

于 2010-07-20T14:33:44.033 に答える