2

助けが必要です。始める前に、それがおそらくベストプラクティスではないことはわかっていますが、既存のサイトのメンテナンスを行っており、修正のために次のことを実行する必要があります。

<a rel="lightbox" href="site.com" title="a generated title">
    <img src="site.com/img" class="post-image" alt="a long description"/>
</a>

さて、jQueryやその他の方法を使用して画像から属性を取得し、タグの属性をalt動的に上書きする方法を理解しようとしています。titlea

どんな助けでも素晴らしいでしょう、私はこの時点でちょっと迷っています。

4

5 に答える 5

7
$(function(){
   $("a").each(function(){
        $(this).attr("title", $(this).find("img").attr("alt"));
   });
});
于 2012-06-28T15:16:18.213 に答える
2

<a>どのsを変更したいかを正確に述べていなかったので、これはすべて<a>のsを<img>内部で変更します...

$("a>img").each(function() {
  $(this).parent().attr("title", $(this).attr("alt"))
})
于 2012-06-28T15:17:05.980 に答える
0

jQueryの場合:

var a = $('a[rel=lightbox])');
var img = a.find('img');
a.attr('title', img.attr('alt'));
于 2012-06-28T15:16:38.223 に答える
0
$('a').each(function(){
    $(this).attr('title',$(this).find('img').attr('alt'));
});

jsFiddle.netは、昨日かそこらで不安定なように見えるので、jsbinでデモを見ることができます。

そして、jsFiddleがロードされる場合、jsFiddleの例

于 2012-06-28T15:17:23.307 に答える
0

あなたはこのようにそれを行うことができます:

$(function() {
    var img = $(".post-image");
    if(img.length == 1) // meaning, at least one element was found
    {
        img.attr("title", img.attr("alt")); // pass the text in alt to title
        img.removeAttr("alt");              // remove alt
    }
});
于 2012-06-28T15:17:36.687 に答える