1

我正在为我当前的项目使用 Twitter Bootstrap。
我有一个工具提示,我在其中显示标题中的文本。
对于手机,我想在标题中附加文本。我能够使用视口宽度检测设备

我在 jsfiddle 中添加了我当前的代码 --> http://jsfiddle.net/VenomVendor/FUCkA/2/
*注意:我不负责动态生成的 URL F****

示例:

对于个人电脑

<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属性并附加到同一个父对象感到震惊。

4

2 回答 2

2

The problem is that every time you write $("span[class*='vee-tooltip-']") (which should be ^=, not *=, by the way), you are creating a whole new jQuery object. There is no relation between them, so you can't affect the one you want easily.

I would suggest using this:

$("span[class^='vee-tooltip-']").each(function() {
    this.appendChild(document.createTextNode(" - "+this.getAttribute("title")));
}
于 2013-06-27T09:25:05.637 回答
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);
})
于 2013-06-27T09:28:06.570 回答