2013-03-07 71 views
-2

我有一個具有以下屬性的輸入variale文本字體粗細正常(不帶任何格式):製作使用CSS的onfocus選擇

<input type="text" style="font-style: italic; color:#808080; font-size: 16px; width: 510px;" id="categ" value="default" name="categ" onfocus="this.value = ''; this.style.color='black'; this.font_weight='normal'"> 

我想清除格式樣式的onfocus。它清除顏色和文字,但不是斜體重量。我也曾嘗試字體重量和font.weight

+2

對不起,但這不是一個很好的做法,並會很快導致不可維護的代碼...您應該定義一個樣式表並使用':focus'選擇器。 JavaScript只是不應該修改CSS屬性。 – kapa 2013-03-07 00:51:43

+0

是這樣的嗎? .myDiv {this.value =''; this.style.color ='black'; this.style.font.font_weight ='normal'; } – CodeMonkey 2013-03-07 00:56:35

+0

No Javascript。CSS。讓我給你看...玩這個演示(http://jsfiddle.net/QgSxy/) – kapa 2013-03-07 00:58:10

回答

1
this.style.fontWeight='normal' 

更新

this.style.fontStyle='normal' 

預覽>>jsfiddle 更新>>jsfiddle

+0

小提琴保持斜體... – CodeMonkey 2013-03-07 01:00:14

+0

@CodeMonkey如何顯示一些努力和邏輯思考?:) – kapa 2013-03-07 01:01:26

+0

更新的代碼和jsfiddle :) – madhushankarox 2013-03-07 01:01:29

1

,如果沒有記錯的我..

this.style.fontWeight='normal' 

然而由於bažmegakapa在他的評論中說的 - 這是非常糟糕的做法。您應該爲onfocus事件創建一個監聽器 - 例如在jQuery中,你可以使用.focus()方法 - 並有一個回調函數來更新元素的CSS。

純粹的CSS會更好!

+0

不適合我:( – CodeMonkey 2013-03-07 00:52:56

2

你想font-weight

this.style.fontWeight="normal" 

一個更好的辦法來做到這一點是使用CSS:

#categ:focus{ 
    font-weight: normal; 
    color:black; 
} 
#categ{ 
    font-style: italic; 
    color:#808080; 
    font-size: 16px; 
    width: 510px 
} 
+0

沒有大膽沒有斜體正常 – CodeMonkey 2013-03-07 00:55:50

+0

javascript樣式屬性aren和css一樣,他們沒有破折號,第二個字的大寫首字母 – Luca 2013-03-07 00:57:59

+0

+1顯示正確的方式 – kapa 2013-03-07 01:02:04