0

私はjqueryにかなり慣れていないので、あまり知識がありません。別の特定の要素が存在する場合、jqueryを使用して特定の要素のクラスを特定のクラスに変更することについて質問しました-JQuery-特定の要素クラスを特定のクラスに変更する他の要素が存在する

これにはイベントリスナーが必要なようです。私はイベントハンドラーの基本的な理解を持っていますが、これは一般的にクリックなどのアクションに関係していますが、特定の要素 innerhtml にテキスト値がある場合に必要なのは Id です (例: ' go') 近くの要素で関数を実行します (以下の例)。

これはブログ用で、特定のタグを使用して投稿のレイアウトを変更します。下には、ターゲティングがどのように機能する必要があるかを示す HTML が繰り返し表示されています。

クラスはスパンです(ブートストラップを使用)

html

<div class="container">

<div  class="span6">
</div>

<div class="span6">
<a class="taglink">text</a>
</div>

</div>

<div class="container">

<div class="span6">
</div>

<div class="span6">
<a class="taglink">text</a>
</div>

</div>

私が望むのは、a & b のクラスと a & b のクラスだけがスパン 6 から 12 に変更されることです。これは、同じコンテナー divにある a クラスの 'taglink' の 1 つの中のテキストが 'go' に等しい場合です。

これは、'go' タグのみが 'a' および 'b' div クラスのみに影響し、独自の 'container' div 内の a および b のクラスのみに影響するようにするためです。

4

1 に答える 1

0

さて、最初の仕事は次のとおりです。

ID は一意である必要があり、これは交渉不可能です。

ということで、以下の仮定を置いてみます。

  1. id=aorid=bまたは(倍数)のすべてのインスタンスは、id=container実際にはそれぞれclass=aclass=b、および を読み取りますclass=container
  2. リンクテキストは動的に変化しません

  $(document).ready(function()
      $('div.container').each(function(){
          if ($(this).find('a.taglink').eq(0).text()=="go"){
              $(this).find('div.a').removeClass('span6').addClass('span12');
              $(this).find('div.b').removeClass('span6').addClass('span12');    
          }
      }
  });
于 2013-02-01T23:00:24.690 に答える