0

我真的想打破我一直在使用的小 jQuery 盒子,并尝试使用 jQuery 做一些不同的事情来缩短某些项目的时间,我想知道如果我只想复制标题,最好的解决方案是什么来自一个锚点的属性,并将该值设置为接下来的 3 个锚点标签。看起来很乏味,我知道......这是我到目前为止所尝试的。

$('#home-gallery li a').each(function(){
    var copiedTitle = $(this).first().attr('title');
        $('#home-gallery li a').each(function(){
            this.title = copiedTitle;
        });
});

这是HTML

    <li>
    <a href="images/tn/eowine/full.jpg" data-fancybox-group="eowine" title="Eowine vs. Nosgule"><img src="images/tn/eowine.jpg" alt="" /></a>
    <!-- more images -->
    <div style="display: none;">
      <a href="images/tn/eowine/first.jpg" data-fancybox-group="eowine" title="Eowine vs. Nosgule"><img src="images/tn/eowine/first.jpg" alt="" /></a>
      <a href="images/tn/eowine/second.jpg" data-fancybox-group="eowine" title="Eowine vs. Nosgule"><img src="images/tn/eowine/second.jpg" alt="" /></a>
      <a href="images/tn/eowine/third.jpg" data-fancybox-group="eowine" title="Eowine vs. Nosgule"><img src="images/tn/eowine/third.jpg" alt="" /></a>
    </div>
    </li>

任何帮助都是极好的!

谢谢!


非常感谢你们帮助我,这意味着很多……我确实提高了我在这个主题上的知识,我最感谢社区的帮助!

我将继续尝试提供给我的各种技巧,并将研究发布的每种方法以进一步掌握知识。

再次感谢各位!

4

3 回答 3

0

你可以这样做:

$anchors = $('#home-gallery li a');
$anchors.slice(1, 4).attr('title', $anchors.first().attr('title'));

这样做是选择匹配集合的第 2 到第 4 个元素(包括所有锚点)并设置它们的title属性以匹配集合中第一个元素的标题。

如果您有其他标准而不是严格的 2nd-3rd-4th 定位,那么也可以用类似的方式来表达这些标准。

看到它在行动

于 2012-04-15T23:38:25.250 回答
0

你可能想要这样的东西:

var copiedTitle = $('#home-gallery li a:first').attr('title');

$('#home-gallery li a:not(:first)').each(function() {
    $(this).attr('title', copiedTitle);
});
于 2012-04-15T23:43:08.387 回答
0

你只需要一个。

var copiedTitle = $('#home-gallery li').children('a').attr('title');
$('div a').each(function() {
    $(this).attr('title') = copiedTitle;
});

Children 仅选择直系后代,并且由于您的第一个锚点具有原始标题,并且它不是后续锚点的兄弟,因此它是唯一需要抓取和存储的锚点。

于 2012-04-15T23:45:22.770 回答