获取链接href并将其应用于另一个链接jQuery

时间:2012-04-19 08:47:08

标签: javascript jquery

我有一组DIV,每个DIV都包含一个带有空锚标签的图像

<a href="#"> Image is here </a>

然后我在div关闭之前有一个 '继续阅读' 链接

<a href="?p=453">Continue reading <span class="meta-nav">→</span></a>

jQuery是否有办法在页面加载时,我可以 href位置继续阅读 按钮并应用空锚缠绕着我的形象?

演示: http://jsfiddle.net/2hu66/1/

4 个答案:

答案 0 :(得分:0)

$('.card-prod').each(function() {
    var cr = $(this).find('a:last');
    $(this).find('.cardclick').attr('href', cr.attr('href'));
});

示例小提琴:http://jsfiddle.net/2hu66/4/

答案 1 :(得分:0)

这是可能的,但这不是一个好主意。使用js创建的链接对于Google抓取工具不可见。正确的做法是创建一个真正的链接,而不是“#”。

做正确的事情并不感兴趣;)。

答案 2 :(得分:0)

根据您的HTML,您可以这样做:

​$(function(){
    $('.card-prod').each(function(){                         //for each item
        var theLink = $('a[href^="?p"]',this).attr('href');  //get the link
        $('a.cardclick',this).attr({'href':theLink});        //set to img link
    });
})​​

答案 3 :(得分:0)

你可以循环“继续阅读”链接并复制他们的href,也许是这样的:

​$(​"div.card-prod a:contains('Continue reading')")​​​​​​​​​​​​​​​​​​​​​​​​​​.each(function() {
    var $this = $(this);
    $this.closest("div.card-prod")
         .find("a.cardclick")
         .attr("href", $this.attr("href"));
});​

更新演示:http://jsfiddle.net/2hu66/3/

我上面使用的:contains selector不是最有效的方法,但它有效。如果它是我的HTML,我可能会给那些“继续阅读”锚元素一个共同的类并选择它。或者您可以选择“元导航”跨度,然后选择他们的父级。 (很多选择,真的。)