1

良い一日

次の URL を含む特定のリンクがページ内にあるかどうかを確認したい:

http://mysite.com/category/products

私は以下を使用していますが、正しいとは思いません(動作しないため)

if $('#breadcrumbs a.category').attr('href') == "http://mysite.com/category/products";
    alert('It is here!');

HTML 構造は次のようになります。

<div id="breadcrumbs">
<a class="category" href="">generated by php</a>
<a class="category" href="">generated by php</a>
<a class="category">generated by php</a>
</div>

トップリンクはこの階層のどこかにあります...

ありがとう!

更新:ページ

4

5 に答える 5

4

属性セレクターを使用できます。

if ($('#breadcrumbs .category[href="http://mysite.com/category/products"]').length > 0) {
    alert("It's here");
}

ドキュメンテーション:

http://api.jquery.com/attribute-equals-selector/

于 2013-03-15T10:41:20.240 に答える
1

attrメソッドは最初に選択された要素の値のみを返します。filterメソッドまたはattrセレクターを使用できます。

$(function() {
    var len = $('#breadcrumbs a.category').filter(function(){
         return this.href === 'http://mysite.com/category/products';
    }).length;

    if (len) {
        alert('It is here!');
    }
});
于 2013-03-15T10:40:43.263 に答える
1

短くしてみてください:

($('[href="http://mysite.com/category/products"]').length > 0) ? alert('Yes there are') : alert('oops');

このフィドルで試してみてください

于 2013-03-15T10:46:09.307 に答える
0
$('#breadcrumbs').click(function(){

 $(this).children('a').each(function(){
    if($(this).attr('href')=="your url")
        .....
 });
});
于 2013-03-15T10:41:05.793 に答える
0
$(document).ready(function() {
   if($('#breadcrumbs a.category').attr('href') == "http://mysite.com/category/products")
   {
       alert('It is here!');
   }    
});  
于 2013-03-15T10:44:27.953 に答える