2013-02-28 173 views
0

我試圖讓兩個文本鏈接轉到兩個不同的URL,並且文本從一個文本更改爲另一個文本每7secs。jQuery點擊鏈接setInterval

我已經嘗試添加點擊事件,但無法讓它正常工作。

jQuery的:

$(document).ready(function() { 
    setInterval(function() { 
$('#rollover').fadeOut(500, function() { 
    var $this = $(this); 
    var textOne = "Join our facebook group"; 
    var textTwo = "Join our LinkedIn group connect Scientists today"; 
    $this.text($this.text() == textOne ? textTwo : textOne); 
    $this.fadeIn(500); 
}); 
}, 7000); 

}); 

HTML:

<p id="rollover">Join our LinkedIn group connect Scientists today</p> 
+0

是淡入/淡出按預期工作? – gaurav 2013-02-28 16:37:22

+0

這似乎工作正常,在這裏檢查http://jsfiddle.net/athd6/ – Derek 2013-02-28 16:37:54

+0

是的,它的工作也是我的目的。 – gaurav 2013-02-28 16:40:51

回答

-1

你的意思是這樣的: http://jsfiddle.net/rfpSL/1/

在變化<p><a>並添加:

 var linkOne = "http://url-one.com"; 
     var linkTwo = "http://url-two.com"; 

     $this.attr('href', $this.attr('href') == linkOne ? linkTwo : linkOne); 
+0

謝謝Serj你在錢上!乾杯 – 2013-02-28 16:46:53

0

我相信你的問題是在這條線:

$this.text($this.text() == textOne ? textTwo : textOne); 

首先,我建議重命名$本自我,以防萬一在那裏發生衝突。

self.text(self.text() == textOne ? textTwo : textOne); 

第三,這實際上工作正常......如評論中顯示的小提琴。

http://jsfiddle.net/athd6/

+0

感謝基督徒,它正在工作,但我試圖做的是有「textOne」鏈接到一個URL和「textTwo」鏈接到不同的網址。 – 2013-02-28 16:41:48

-1

嘗試下

$this.html($this.text() == textOne ? textTwo : textOne); 
0
<script type="text/javascript"> 
$(document).ready(function() 
{ 
     change(); 
}); 


function change(){ 
    setTimeout(function() { 
     $('#rollover').fadeOut(500, function() { 
      var $this = $(this); 
      var textOne = "Join our facebook group"; 
      var textTwo = "Join our LinkedIn group connect Scientists today"; 
      $this.text($this.text() == textOne ? textTwo : textOne); 
      $this.fadeIn(500); 
      change(); 
     }); 
     }, 7000); 
} 
</script> 
0

在這裏你去

var textOne = "Join our facebook group"; 
var textTwo = "Join our LinkedIn group connect Scientists today"; 
var isRotated=true; 
var rotateText=function(){ 
    setInterval(function(){   
     var text=isRotated?textOne:textTwo; 
      $("#rollover").text(text);  
     isRotated=!isRotated; 
    }, 7000); 
}; 

rotateText(); 

http://jsfiddle.net/UQk5h/1/