0

可能かどうかはわかりませんが、可能であれば誰かが私に提案してくれます。

例えば:

<a href="image/image.jpg"><img src="image/image.jpg" alt="image"/></a>

これでは、jqueryを使用してhrefパスを別の画像に動的に変更する方法. つまり、

<a href="image/img.jpg"><img src="image/image.jpg" alt="image"/></a> like this.

編集: もし

<a href="#"><img src="image/image.jpg"/></a>
<a href="http://stackoverflow.com"><img src="image/image.jpg"/></a>
<a href="image/image.jpg"><img src="image/image.jpg"/></a>

href attrhrefリンクのアンカータグに画像が含まれている場合にのみ、この条件が満たされるようにするにはどうすればよいですか。アンカーテキストはimgタグ付けする必要があります。

JSFIDDLE は次のとおりです: http://jsfiddle.net/HMsSE/9/ どんな提案でも大歓迎です。

ありがとう、ヴィッキー

4

5 に答える 5

3

関数を使用し.attr()て href を新しい値に設定してみてください。

$('a[href="image/image.jpg"]').attr('href', 'image/img.jpg');

もちろん、アンカーに一意の ID を指定すると、おそらく簡単になります。

<a href="image/image.jpg" id="myLink"><img src="image/image.jpg" alt="image"/></a>

より簡単に選択できるように:

$('#myLink').attr('href', 'image/img.jpg');
于 2013-07-04T06:18:23.787 に答える
2

attr関数を使うだけ

$('a').attr('href','image/img.jpg');

より便利なIDで変更することもできます

<a id="myLink" href="image/image.jpg"><img src="image/image.jpg" alt="image"/></a>

$('#myLink').attr('href','image/img.jpg');
于 2013-07-04T06:18:40.447 に答える
2

また、使用してみることができます.prop()

$('a').prop('href', 'image/img.jpg')

あなたのコメントから、子要素があるときにhrefofaタグを変更しようとしていますimg。もしそうなら、

if($('a').find('img').length) {  // it return the no. of img tag within a
   $('a').prop('href', 'image/img.jpg');
}
于 2013-07-04T06:20:03.297 に答える
2

topicstarter が aksed したように、変更は画像クリックで実行されます

$('img').click(function() {
    $(this).parent('a').attr("href","image/img.jpg");
});

href もチェックしたい場合は、条件を使用する必要があります

$('a').click(function() {
    event.preventDefault();
    if ($(this).attr('href').search('jpg')!=-1)
        $(this).attr("href","image/img.jpg");
});

<img>また、内部<a>は常にクリックに反応するとは限らないことに言及する必要があります

そうそう、フィドル UPDフィルターを忘れる方法がわからない

$('a').click(function() {
    event.preventDefault();
    $(this).filter('[href*=jpg],[href*=png],[href*=gif]').attr("href","image/img.jpg");
});

新しい短いデモ

于 2013-07-04T06:51:15.317 に答える