1

jQueryに関しては初心者で、.parents(). を使用する.parents('span[class^="lid"]')と、コードが機能し、必要なものを取得できます。つまり、要素classフィルターとして取得します。しかし、.parents('span[class~="header"]')またはを使用する.parents('span[class^="header"]')と、<span> 要素が表示されません。

以下は私のコードです:ここをクリックして表示

~=セレクターがいずれかの単語と正確に等しいかどうかを^=確認し、値の先頭が一致するかどうかを確認することは確かです。

助けてくれてありがとう。

4

3 に答える 3

1

このコードを使用して直接使用できます

var parentEls = $("b").parents('span.lid_1').map(function() {
  return this.tagName;
}).get().join(", ");
$("b").append("<strong>" + parentEls + "</strong>");

http://jsbin.com/azurat/7/editでコードをテストします

于 2013-02-05T12:25:17.430 に答える
1

jQuery の選択は CSS のように機能するため、ドット (.) を使用してクラスを選択できます。

$('tag.class');
$('tag#id');
...

だから、あなたの場合:

.parents('span.header');
于 2013-02-05T12:20:16.637 に答える
1

これは「クラスセレクター」ではなく「属性セレクター」であるため、属性の値を取得します。その値は次のとおりです。

"lid_1 header1"

各クラスをチェックするのではなく、属性内の文字列を比較して、指定された文字列などで始まるかどうかを確認します。これが理由です:

span[class*="header"]

文字列に「header」が含まれているため機能しますが、「header」で始まらないため、次のようになります。

span[class^="header"]

動作しないでしょう。

于 2013-02-05T12:24:53.670 に答える