0

要素の特定のクラスを選択する方法を知っている人はいますか?htmlで作成された要素があります。この要素には、たとえば「n」と「s1」の2つのクラスがあります。

{<td class="n" class="s1" id=""><img src="gfx/football.png" /></td>}

次に、jqueryで別の要素を作成します(これは単なるdivです)。私がやろうとしているのは、上の要素(td)をクリックしたときに、同じクラス(クラスs1)を新しいに追加したいということです<div>。同じクラスのこれら2つの要素が必要です。

私が使用しているコードは次のようになります。

myDIVishere.addClass($(this).attr('class')

この行は私の新しいdivにクラスを追加しますが、上記のように私の$(this)-><td>には2つのクラスがあります。最初のクラスではなく、2番目のクラス(class = "s1")を追加することをプログラムに伝える方法。私はほとんど忘れていました。50個<td>の要素があるので、クラス名を使用できません。

4

2 に答える 2

1

まず、マークアップを修正する必要があります。

OperaとChromeでテストしましたclass="foo" class="bar"が、無効です。

する必要がありますclass="foo bar"

これを考慮すると、次のように2番目のクラスを取得できます。

var el = $('<a />', { class: 'foo bar' });
var classes = el.attr('class').split(' ');
var secondClass = classes[1];

別の要素に追加する前に、secondClassの未定義を確認してください。これにより、予期しない結果が生じる可能性があります。

于 2013-02-27T18:09:19.887 に答える
0

その属性情報を使用して要素を識別する場合、実際にはIDを使用する必要があります。そうすることで一意になります。

ID属性に保存できない/保存しない場合は、代わりにs1クラスに保存し、個別の識別可能な属性を指定します...次のように取得できます。

var specialValue = $('.myElement').attr('special-attribute');
$('.someOtherElement').addClass( specialValue );

しかし、そこでは、の使用addClassもエネルギーの浪費になります。その時点で文字通り属性を使い続けることができます。

于 2013-02-27T17:46:58.023 に答える