2016-09-14 22 views
-1

這任何CSS功能的文字:「芽」JQuery的選擇的文本節點,但不能瓶坯它

<div id="wrapper1">Welcome to our website<span class="inner">, </span>Bud!</div> 

所以選擇有:

var elementOne = $('#wrapper1')[0].childNodes[2].nodeValue; 

當我做elementOne.css("color", "red");我得到的錯誤:

Uncaught TypeError: elementOne.css is not a function

我怎麼能瓶坯CSS這個變量?

EDIT: Please note that I am not interested to add a span and this was given to me by someone as a quiz test and there is a way to preform this without adding the span

與包裹努力,由偉大的斯科特提供的(他給了我一個鏈接到jQuery的包裝功能)

TRIAL: tried with this:

var elementTwo = $('#wrapper1'); 
elementTwo.html(elementTwo.text().replace(/(\w+?)$/, '<span style="color: red;">$2</span>')); 

仍然沒有工作。

+1

你怎麼能指望應用CSS到一個隨機文本節點???你至少需要將其包裝在一個跨度或其他東西。您不能將CSS屬性應用於文本,它們需要一些HTML元素進行選擇。 – Scott

+0

@斯科特好吧,別拿它親自動手,我只想着色蕾!在紅色,sheese。 – clusterBuddy

+1

嚴正..沒有任何個人...正如我所解釋的,你不能在稀薄的空氣中應用css屬性......他們需要一個html選擇器來應用......例如跨度。 – Scott

回答

0

試試這個:

你的HTML

<div id="wrapper1">Welcome to our website<span class="inner">, </span>Bud!</span></div> 

您的JavaScript

var elementOne = $('#wrapper1')[0].childNodes[2]; 
$(elementOne).wrap("<div>").css("color","red"); 
+0

檢查我的編輯:不添加跨度。謝謝。 – clusterBuddy

0
<div id="wrapper1">Welcome to our website<span class="inner">, </span><span class="bud">Bud!</span></div> 


$(".bud").css("color", "red"); 

這工作得很好,你不應該文本節點,它僅適用於應用CSS功能在jQuery對象上。

希望這可以幫助

+0

檢查我的編輯:無需添加跨度。謝謝。 – clusterBuddy

-1

我已經找到了答案:

var elementOne = $('#wrapper1')[0].childNodes[2]; 
$(elementOne).wrap("<span style='color: red;'>"); 
相關問題