2015-03-31 21 views
0

我想在javascript函數添加CSS代碼CSS代碼,這是功能,我有如何把在JavaScript

function test1() { 
    document.getElementById("p1").innerHTML = "test"; 
} 

,我想在它這個CSS代碼

p1 { 
    text-shadow: 0 1px 0 #ccc, 
       0 2px 0 #c9c9c9, 
       0 3px 0 #bbb, 
       0 4px 0 #b9b9b9, 
       0 5px 0 #aaa, 
       0 6px 1px rgba(0,0,0,.1), 
       0 0 5px rgba(0,0,0,.1), 
       0 1px 3px rgba(0,0,0,.3), 
       0 3px 5px rgba(0,0,0,.2), 
       0 5px 10px rgba(0,0,0,.25), 
       0 10px 10px rgba(0,0,0,.2), 
       0 20px 20px rgba(0,0,0,.15); 
} 

-

基本上,我有一個段落(p1),我使用javascript,因爲我做了一個onclick =「test1()」的按鈕,所以當它點擊它時,它會改變文本到我放的那個是「測試「,但我不希望整個p aragraph有陰影,我只想'測試'擁有它,希望我已經清楚了!

謝謝

+0

你不需要在你的情況爲CSS任何特殊的編程。只需將它正確添加到您的HTML。 – 2015-03-31 01:32:17

+0

爲什麼要爲此使用JavaScript?如果您只是將您的CSS文件包含在DOM中,則將應用樣式。如果您想動態切換樣式,請在類中指定它們,然後更改元素的類屬性。 – David 2015-03-31 01:32:40

+0

也許他想動態添加陰影? – 2015-03-31 01:33:58

回答

-1

類似的東西?

document.getElementById("p1").style.textShadow = "5px 5px 1px #ff0000,10px 10px 1px #0000ff"; 

這裏找到:http://www.w3schools.com/jsref/prop_style_textshadow.asp

+0

我知道這樣做並不是很乾淨,最好使用一些CSS類,但這個答案是正確的。所以,在沒有評論原因的情況下下調,這不是建設性的... – 2015-03-31 23:31:37

-1

這很難說,你真的應該張貼您的HTML以及這樣我們就可以更好地理解它。你也可以嘗試這個,如果你可以使用jQuery:

但我同意你可能不需要通過JS來做到這一點。

0

試試這個,

<p id="p1"> 
This is a <span>test.</span> 
</p> 
<button id="button1">Button</button> 

從我從你的問題明白了,你想要的功能添加陰影,只是字的考驗。在這種情況下,使用<span>元素可能是實現這一點的最簡單方法。 .innerHTML()不會選擇<p>裏面的文字,而是設置文字,所以您將只剩下一個元素,裏面只有'test'這個詞。

而下面的JavaScript可以根據自己的喜好進行修改,但基本概念就在那裏。

var button = document.getElementById("button1"); 

button.addEventListener("click", function(){ 
    var p = document.getElementById("p1"); 
    var test = p.getElementsByTagName("span")[0]; 
    test.style.textShadow = "5px 5px 1px #ff0000,10px 10px 1px #0000ff"; 
}); 

小提琴:https://jsfiddle.net/0Lhc4tav/