0

http://link.com/photo/ photo / user?= 19746912

太字部分を参照してください。このリンクを調べて、リンクに2つの写真があるため、このコードを使用できなかったため、2番目のレベルに「写真」という単語が含まれていることを確認するにはどうすればよいですか。

$('a[href*=photo]).attr('href');

上記のコードからわかるように、写真が含まれているリンクを探して、hrefを取得します。問題は、次のような写真を含む2つのリンクがある場合はどうなるかです。

<a href="http://link.com/photo/photo/user?=19746912"></a>

<a href="http://link.com/photo/album/user?=19746912"></a>

両方のリンクの最初のレベルにフォトワードが含まれていることがわかります。これは、上記のコードを使用している場合は適切ではありません。では、link1が写真、link2がアルバムである、第2レベルのリンクを確認し、第2レベルの「写真」(最初のリンク)のhrefを持つリンクを取得するにはどうすればよいですか。

最新のjQueryを使用しています。

ありがとう。

4

1 に答える 1

4

あなたはこれを行うことができません:

$('a[href*="photo/photo"]').attr("href")

または、もっと複雑なことをしたい場合は、正規表現を使用して href をテストできます。

$('a').filter(function() {
    return /\/photo\/[^\/]+$/.test(this.href);
});

(デモンストレーション用に含めた正規表現は、「/photo/」の後に 1 つ以上のスラッシュ以外の文字が続く文字列に一致するため、最初のアンカーには一致しますが、2 番目のアンカーには一致しません。)

デモ: http://jsfiddle.net/XAnAq/1/

于 2012-08-03T03:42:10.403 に答える