2012-09-09 64 views
1

如果已經回答了這個問題,請指出我的方向是正確的,但是我試圖在每次單擊鏈接時在鏈接的HREF末尾更新數字。增加點擊ID號碼

因此,我的鏈接,例如是<a class="next" href="#slideshow-wrapper0">Next</a>,每次點擊時,我都希望它將'0'更新爲'1',然後'2'等等。

任何想法?這是我想出了...

$(document).ready(function(){ 
    var count = 0; 
    $("next").click(function(){ 
     $(".work-main-content").append("<div id='portfolio-slideshow'" + (count++) +">"); 
    }); 
}) 

乾杯, [R

+1

有你的代碼和您的要求之間的矛盾,要附加一個div,哪裏是'href'屬性?你的選擇器也不選擇任何元素,對於類選擇器你應該使用'.' =>'$('。next')' – undefined

+0

啊,對。是。我需要更新href,而不是div。 –

+0

所以你想要[this](http://jsfiddle.net/JTqS5/) – Sender

回答

2

試試這個:

$('.next').click(function(){ 
    $(this).attr('href', function(){ 
     var n = this.href.match(/\d+/); 
     return '#slideshow-wrapper' + ++n 
    }) 
}) 

更新:

$('.next').click(function(){ 
    $(this).attr('href', function(){ 
     var n = this.href.match(/\d+/); 
     if (n > 20) { 
      return '#slideshow-wrapper' + ++n 
     } else { 
      return '#slideshow-wrapper0' 
     } 
    }) 
}) 

http://jsfiddle.net/rV663/

+0

+1用於回答所問的問題,而不是(錯誤的)*暗示的問題。但是,我可以提供一個*輕微*(和最小的)修正案,以便可能節省一些額外的工作:[JS Fiddle演示](http://jsfiddle.net/BNv6r/)。 –

+0

這太好了。謝謝。 –

+0

有什麼辦法可以檢查頁面上達到的最大數量,然後在底部達到最大值時復位?帶有ID的div是通過CMS生成的,因此可以根據內容動態完成。 –

2

您要添加的計數值

$(document).ready(function(){ 
    var count = 0; 
    $("next").click(function(){ 
     $(".work-main-content").append("<div id='portfolio-slideshow" + (count++) +"' >"); 
    }); 
}) 
+0

他想更新*鏈接*的*'href' *,而不是(只)創建的'div的count變量'。 –

2

使用對象保持跟蹤收盤前的id屬性它並增加它。

var c = { 
    curr : 0, 
    incrm: function(){this.curr++} 
    } 

$("next").click(function(){ 
     $(".work-main-content").append("<div id='portfolio-slideshow" + c.curr +"' >"); 
     //use below to update href or what not 
     $("#whatever").attr('href','portfolio-link-number-' + c.curr); 
     c.incrm(); 

    });