Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome Chrome内存泄漏,带有移动SVG文本和模糊过滤器_Google Chrome_Svg_Memory Leaks_Blur_Svg Filters - Fatal编程技术网

Google chrome Chrome内存泄漏,带有移动SVG文本和模糊过滤器

Google chrome Chrome内存泄漏,带有移动SVG文本和模糊过滤器,google-chrome,svg,memory-leaks,blur,svg-filters,Google Chrome,Svg,Memory Leaks,Blur,Svg Filters,我有一个包含几个SVG元素的页面,每个元素都应用了一个SVG模糊过滤器。我注意到,如果元素持续移动,Chrome的内存很快就会耗尽 要复制此代码笔,请执行以下操作: 正文{填充:0;边距:0;} 模糊测试! (功能(){ var svgText=document.getElementById('t0'); svgText.setAttribute('filter','url(#f1'); var x=0; var y=0; setInterval(函数(){ x+=1; y+=1; 如果(x>

我有一个包含几个SVG元素的页面,每个元素都应用了一个SVG模糊过滤器。我注意到,如果元素持续移动,Chrome的内存很快就会耗尽

要复制此代码笔,请执行以下操作:


正文{填充:0;边距:0;}
模糊测试!
(功能(){
var svgText=document.getElementById('t0');
svgText.setAttribute('filter','url(#f1');
var x=0;
var y=0;
setInterval(函数(){
x+=1;
y+=1;
如果(x>1000){
x=0;
}
如果(y>500){
y=0;
}
setAttribute('transform','translate('+x+','+y+'));
}, 100);
})();   
打开Chrome的任务管理器,注意该选项卡的内存使用情况。我在Chromium的问题追踪器上提交了一份错误报告。但我想知道是否有人以前遇到过这种情况,是否有解决办法

谢谢

编辑:在Windows7上的Chrome48.0.2564.97M上注意到这个问题

<html>
<head>
  <meta charset="UTF-8">
  <style> body {padding: 0; margin: 0;} </style>

  <svg height="0" width="0">
        <defs>      
            <filter id="f1">
                <feGaussianBlur in="SourceGraphic" stdDeviation="2" />
            </filter>
        </defs>
    </svg>
</head>

<body>  
    <svg height="30" style="position: absolute; top: 100px; width: 1000px;height: 500px;">
      <text x="0" y="15" fill="black" id="t0">BLUR TEST!</text>
    </svg>
    <script>
    (function() {
        var svgText = document.getElementById('t0');
        svgText.setAttribute('filter', 'url(#f1)');
        var x = 0;
        var y = 0;

        setInterval(function(){
            x+=1;
            y+=1;

            if(x > 1000) {
                x = 0;
            }

            if( y > 500) {
                y = 0;
            }
            svgText.setAttribute('transform', 'translate(' + x + ',' + y + ')');
        }, 100);
    })();   
</script>
</body>
</html>