2016-04-13 19 views
0

Aşağıdaki Javascript, Chrome, Firefox ve Opera üzerinde çalışmamaktadır. o çıkartılacaktır gibi imgMid olarak gösteren bir sonucu ve sağ üst köşedeki sayılar gibi Basit Javascript kodum Safari'de çalışıyor, ancak Chrome, Firefox veya Opera değil, Ne yanlış?

<html> 
<script> 
function window_onLoad(){ 
    var ang; 
    var i; 
    imgMid.style.posLeft = document.body.clientWidth/2; 
    imgMid.style.posTop = document.body.clientHeight/2; 
    ang = 6.2/8; 
    Position(div1, ang); 
    Position(div2, ang * 2); 
    Position(div3, ang * 3); 
    Position(div4, ang * 4); 
    Position(div5, ang * 5); 
    Position(div6, ang * 6); 
    Position(div7, ang * 7); 
    Position(div8, ang * 8); 
} 

function Position(objO, a){ 
    objO.style.posLeft = imgMid.style.posLeft + Math.sin(a) * 200; 
    objO.style.posTop = imgMid.style.posTop - Math.cos(a) * 200; 
} 
</script> 

<body onload="window_onLoad()"> 
    <img id=imgMid style="position: absolute;" src="dot.gif" /> 
    <div id=div1 style="position: absolute;">1</div> 
    <div id=div2 style="position: absolute;">2</div> 
    <div id=div3 style="position: absolute;">3</div> 
    <div id=div4 style="position: absolute;">4</div> 
    <div id=div5 style="position: absolute;">5</div> 
    <div id=div6 style="position: absolute;">6</div> 
    <div id=div7 style="position: absolute;">7</div> 
    <div id=div8 style="position: absolute;">8</div> 
</body> 
</html> 

Ancak Safari'de bu imgMid etrafında numaralarının daire şeklinde görünür.

+1

Kendinizi tekrar etmeyin. – evolutionxbox

+0

Sorun olup olmadığını bilmiyorum, ancak '

1

Don't use onevent HTML attributes.

Ayrıca load o body üzerinde kovmamam, bir window olaydır. document yerine üzerinde DOMContentLoaded olayı kullanın:

document.addEventListener("DOMContentLoaded", window_onLoad}) 
+1

Bu, sorunla ne ilgisi yok. – Pointy

+1

@Point İyi, OP'nin 'onevert' HTML özniteliklerini kullandığı gibi, ama bu sorunun gerçekten bir cevabı değil, kabul ediyorum… – webeno

İlgili konular