2013-10-10 65 views
8

我正在嘗試使用jQuery UI工具提示,我想我可能會丟失一些東西。簡單的jQuery UI工具提示沒有標題屬性

我想要最簡單的工具提示,而不指定title屬性。

我相信我應該能夠在我的JavaScript幾乎任何地方撥打此:

$('#ContactName').tooltip({ content: 'Hey, look!' }).tooltip('open'); 

這是行不通的。難道我做錯了什麼?

編輯:我應該提及#ContactName是一個輸入[type = text],它在jQuery UI對話框中。

編輯2:好的,這工作。雖然我不明白爲什麼。

$($('#ContactName').parent()).tooltip({ 
    items: '#ContactName', 
    content: 'Hey, look!' 
}); 

它適用於懸停。無論如何,我可以用相同的代碼立即打開它?

編輯3:這是我結束了:

  $($('#ContactName')).tooltip({ 
       items: '#ContactName', 
       content: $(this).text(), 
       position: { 
        my: 'left+15', 
        at: 'right center' 
       }, 
       tooltipClass: 'ui-state-error' 
      }).tooltip("open"); 
+0

參見:http://forum.jquery.com/topic/jquery-ui-tooltips-require-a-title-tag – KyleMit

回答

17

當您設置content選項,你可能還需要指定items選項。

看到自己API文檔和本jsFiddle example

<span id="ContactName">Test</span> 

$("#ContactName").tooltip({ 
    items: "span", 
    content: "Awesome title!" 
}).tooltip("open"); 
+0

爲什麼一定要綁定到容器? –

+0

@JoshYoung,查看更新。它不需要,但你必須將它綁定到某個東西上,然後具體告訴它看什麼項目。我不知道如何在選項元素中引用'this',但可以使用元素選擇器。 – Brandon

+0

這是工作。有什麼方法可以立即開放嗎? –

1

這是一個有點哈克但當items不爲你工作(假設你同時做多個選擇),您還可以設置標題上飛:

$($('#ContactName')). 
     attr('title', ''). 
     tooltip({ 
      content: $(this).text(), 
      position: { 
       my: 'left+15', 
       at: 'right center' 
      }, 
      tooltipClass: 'ui-state-error' 
     }).tooltip("open"); 
+0

'content'的正確值應該是:'function(){return $(this).text(); }'。 '物品'也應該設置。 –

相關問題