2010-08-09 24 views
5

我在設置某些東西在JS中浮動時遇到了問題。我的代碼如下:從Javascript設置浮點數值

var closebutton = document.createElement('div'); 
closebutton.style.styleFloat = "right"; 
alert(closebutton.style.styleFloat); 
closebutton.style.background = "#f00"; 
closebutton.innerHTML = '<a href="">&#10006;</a>'; 
titlebar.appendChild(closebutton); 

元素的背景確實是紅色的,並且當加載頁面警告「正確」時。然而,div並沒有正確地浮動。 Firebug沒有顯示浮標的痕跡。錯誤控制檯中沒有錯誤或警告。

我很難過!

更新:
至於建議,我自己也嘗試:

closebutton.style.float = 'right'; 

這也不起作用,並強調了鮮紅的在我的文本編輯器(gedit中)

回答

11

的標準方法在JavaScript設置浮動風格是使用cssFloat屬性:

closebutton.style.cssFloat = 'right'; 

,在所有瀏覽器上運行,而不是在IE瀏覽器,它預計styleFloat屬性。因此,你可以檢測瀏覽器,並應用相應的屬性,否則將它們都:

closebutton.style.styleFloat = 'right'; 
closebutton.style.cssFloat = 'right'; 

注意float是在JavaScript中的保留字,不能在點號使用。例如,同樣適用於class,這是另一個保留字。這就是爲什麼與JavaScript保留字衝突的CSS屬性有一個不同的名稱(Source)。

延伸閱讀:

+0

那些話在我腦海中的那一刻,我看到了問題標題 - 你是一個遠程MIND-讀者! :) – Latze 2010-08-09 22:02:46

3

代替closebutton.style.float,使用closebutton.style.cssFloat

參考:W3C Style Object Reference

+0

謝謝!這工作 – Mala 2010-08-09 19:21:57