2016-04-17 85 views
0

我一直在玩附加sdk來創建擴展即ie。可以在從互聯網網站上找到的圖像上畫線時使用。CSS轉換不能在Firefox擴展上工作

該擴展的工作原理是它擴展了互聯網網站的DOM,並帶有幾個映射到CSS的div標籤。

創建我用CSS變換這樣

fibotin.draw = function (event) { 
    var currentPosX = event.clientX; 
    var currentPosY = event.clientY; 
    event.preventDefault(); 
    /* .... */ 
    if (drawSelection === "line") { 
     var length = fibotin.calculateLineLength(currentPosX, currentPosY, drawObj.startPosX, drawObj.startPosY); 
     var angle = fibotin.calculateAngle(currentPosX, currentPosY, drawObj.startPosX, drawObj.startPosY); 
     var transform = 'rotate(' + angle + 'deg)'; 

     drawObj.element.style.transform = transform; 
     drawObj.element.style.width = length; 
    } 

和CSS我聲明如下

#line{ 
transform-origin: 0 100%; 
height: 2px; 
background: red; 
position: fixed; 
z-index: 999999; 
cursor: move; 
} 

出於某種原因,這個代碼不能在所有站點的工作線。 (即google.com) 但在某些情況下 - 在較簡單的網站 - 它的工作原理(www.stox.fi)

有沒有人有想法如何解決這個問題,以便它可以在所有網站上工作?

你可以檢查它在我的擴展名爲Fibotin

回答

0

position如何工作relativeabsolute。那應該使transform工作。 fixed應該使它工作。奇怪的是,事實並非如此,也許有一些壓倒一切的東西?

+1

tnx for reply。我發現了這個問題。 drawObj.element.style.width需要添加+「px」..所以行應該:drawObj.element.style.width = length +「px」; – TapioS

+0

感謝您分享解決方案! – Noitidart