0
<g id="clouds" >
<ellipse x="0" y="0" cx="100" cy="100" rx="30" ry="20" fill="white"/>
<ellipse x="0" y="0" cx="120" cy="80" rx="30" ry="20" fill="white"/>
<ellipse x="0" y="0" cx="130" cy="110" rx="30" ry="20" fill="white"/>
<ellipse x="0" y="0" cx="160" cy="100" rx="30" ry="20" fill="white"/>
<animateTransform attributeName="transform"
attributeType="XML"
type="translate"
from="0,0"
to="6000,0"
dur="30s"
repeatCount="indefinite"/>
</g>
及以下是JavaScript:
var svg = document.getElementsByTagName('svg')[0];
var xlinkns = "http://www.w3.org/1999/xlink";
function loadClouds(){
setInterval(function(){
var y = (Math.random()*1000)+200;
var use = document.createElementNS("http://www.w3.org/2000/svg", 'use');
use.setAttributeNS(xlinkns, "href", "#clouds");
use.setAttribute("transform", "scale(0.2,0.2)");
use.setAttribute("x", 0);
use.setAttribute("y", y);
svg.appendChild(use);
}, 1000);
}
如何,我叫它:
//Clouds
<script type="text/javascript"><![CDATA[
loadClouds();
]]></script>
每次一雲創建它使用先前創建的雲的x作爲起點而不是從0開始。
只是在黑暗中拍攝,但不是x&y區分大小寫的svg?嘗試設置X而不是x。 – Zenoo
g元素相對於當前變形情況定位.. –