2013-03-30 64 views
1

我有我的網站上一些縮略圖,使用Twitter的引導提示,顯示每個縮略圖的名字,我想要做的是遍歷各一個,用的延遲如2秒鐘時間,顯示工具提示,則隱藏它隨着下一個彈出。我試圖用幾種方法做到這一點,但沒有任何工作。我如何使用jQuery永久循環引導工具提示?

我得到儘可能這樣的事情,但是這是行不通的。

$("[rel=tooltip]").each(function (i) { 
     $id=$(this).attr('id'); 
     $($id).tooltip('show'); 
    }); 

這裏是我的佈局的的jsfiddle:http://jsfiddle.net/BWR5D/

任何想法?

回答

1

嘗試以下操作:

var ttid = 0, tooltipIds = []; 
$("a[rel=tooltip]").each(function(){ 
    tooltipIds.push(this.id); 
}); 

var iid = setInterval(function(){ 
    if (ttid) $('#'+tooltipIds[ttid-1]).tooltip("hide"); 
    if (ttid === tooltipIds.length) ttid = 0; 
    $('#'+tooltipIds[ttid++]).tooltip("show"); 
}, 2000); 
  • 您可以從顯示阻止提示:clearInterval(iid);
+0

我似乎無法獲得此做任何事情超過產生錯誤。你可以編輯JSFiddle讓它工作嗎?謝謝 –

+0

我錯誤地在一行上輸入了tooltipIds數組名稱。代碼已更新。這是工作:http://jsfiddle.net/say2joe/BWR5D/5/ –

+0

忽略過去撥弄鏈接。 http://jsfiddle.net/say2joe/BWR5D/6/ –

0

繼應隱藏當前打開的工具提示,則顯示下。使用當前索引緩存VS元素的長度來確定何時在從頭開始背

/* cache elements*/ 
var $els=$("a[rel=tooltip]").tooltip(), index=-1; 

var tipLoop=setInterval(function(){ 
    index++; 
    index = index < $els.length ? index : 0; 
    $els.tooltip("hide").eq(index).tooltip('show');  
},2000) 

DEMO:http://jsfiddle.net/BWR5D/1/

+0

這是偉大的,但第一個循環之後,工具提示顯示不到一秒鐘,然後消失,沒有辦法解決呢? –

+0

不知道是什麼原因造成的,看起來像bootstrap中的bug。嘗試使用有效的html,'div'不是''的有效子。另外不知道,你並沒有要求衝突問題,當用戶將鼠標懸停圖像 – charlietfl

+0

最好我想它停下來,當用戶將鼠標懸停恢復。現在,div只能作爲佔位符。 –