0

jQueryに問題があります。私のHTMLコードには、次のような数字が増加する要素がいくつかあります。

<ul class="flexer-0"> ... <ul class="flexer-1"> ... <ul class="flexer-2">

これは、次のコードでulが取得するクラスです。

$('ul').addClass(function(index) {
    return 'flexer-' + index;
});

後でjQueryでこの要素を選択するにはどうすればよいですか。

私のアイデアは次のようなものでした。

$("ul.flexer-0") ...
$("ul.flexer-1") ...
$("ul.flexer-2") ...

これは、多くのul-listを含む長いページになるため、ストレスがたまります。jQueryでインデックス番号を取得できるはずです。

誰かアイデアはありますか?

カイ

4

1 に答える 1

2

要素の属性でが唯一のクラスである場合flexer-nは、selectorで始まる属性を使用して、すべての一致を選択できます。class

$('ul[class^="flexer"]')

これはulclass属性が。で始まるものと一致し flexerます。

ただし、たとえば次のような他のクラスがある場合は機能しないことに注意してください。

<ul class="foo flexer-3">

私は一歩下がって尋ねます:なぜあなたはこれらのflexer-nクラスのすべてを持っているのですか?idおそらくsまたは個々のフレクサーのdata-*属性と組み合わせた単一のクラスの方が理にかなっているように聞こえます。

于 2012-11-06T11:16:30.827 に答える