2013-06-27 61 views
1

我正在使用Twitter Bootstrap作爲我當前的項目。
我有一個工具提示,我在其中顯示標題中的文字。
對於手機我想追加標題和文字。我可以用視寬獲取類/ id的屬性,並使用jQuery追加到文本

我已經加入我當前的代碼中的jsfiddle檢測設備 - >http://jsfiddle.net/VenomVendor/FUCkA/2/
*注:我不負責動態生成的URL ˚F****

實施例:

對於PC

<span class="vee-tooltip-right" title="Asynchronous JavaScript and XML">AJAX</span> 
<br> 
<span class="vee-tooltip-top" title="JavaScript Object Notation">JSON</span> 
<br> 
<span class="vee-tooltip-left" title="Cascading Style Sheets">CSS</span> 


對於手機 - 要做

<span class="vee-tooltip-right" title="">AJAX - Asynchronous JavaScript and XML</span> 
<br> 
<span class="vee-tooltip-top" title="">JSON - JavaScript Object Notation</span> 
<br> 
<span class="vee-tooltip-left" title="">CSS - Cascading Style Sheets</span> 


我設法得到使用attr() &一些使用count類標題的字符串。

因爲我有不同的類名稱我用共同選"span[class*='vee-tooltip-']"

我觸動了動態擷取的title屬性和附加到相同的父。

+3

+1史詩的jsfiddle鏈接XD –

+0

「我設法用獲得的標題字符串attr()「/」我動態地獲取標題屬性「。兩者如何都是真實的? – Jon

+0

我感到震驚.......並追加到相同的父。 – VenomVendor

回答

2

的問題是,每次你寫$("span[class*='vee-tooltip-']")(這應該是^=,不*=,順便說一句),要創建一個全新的jQuery對象。它們之間沒有關係,所以你不能輕易影響你想要的。

我會建議使用此:

$("span[class^='vee-tooltip-']").each(function() { 
    this.appendChild(document.createTextNode(" - "+this.getAttribute("title"))); 
} 
+2

嘗試'this.removeAttribute(「title」)'去除attribut或'this.setAttribute(「title」,「」)''。另外,您可能想了解[Vanilla JS](http://vanilla-js.com/),這是一個功能強大的JavaScript擴展,它已經內置於所有瀏覽器中;) –

+0

@Kolink酷鏈 – raam86

0

使用.each

http://jsfiddle.net/raam86/8RjN8/

$("span[class*='vee-tooltip-']").each(function() { 
    $this = $(this); 
    var text = $this.text(); 
    var title = $this.attr("title"); 
    $(this).text(text + title); 
}) 
+0

這是我得到的問題,第一個元素標題應用於所有其他元素,順便說一句,接受的答案是解決方案。 – VenomVendor

+0

@VenomVendor哎呦沒有注意到它是一樣的。修正了這個問題,您將擁有jQuery解決方案。 – raam86

相關問題