繁体   English   中英

动态加载的SVG似乎不再执行onload函数

[英]Dynamically loaded SVG doesn't seem to execute onload functions anymore

我有一个使用GWT作为“单页应用程序”编写的现有应用程序。 可能发生的事情之一是将用户提供的SVG加载到页面中进行查看。 用户可以(通过SVG)调用主应用程序中的函数以检索或设置值。

从最近开始(不确定确切时间),从GWT加载SVG时,Chrome将不再执行onload 但是旧版本的Chrome可以,Opera可以,许多(全部)版本的Firefox可以。 一位用户表示,IE10 / 11还在按预期工作。

Chrome似乎有所改变,最近才有所改变...

SVG的加载看起来像;

import com.google.gwt.dom.client.Element;
import com.google.gwt.user.client.ui.HTMLPanel;

@UiField
HTMLPanel svgContainer;

@Override
public void setSvgContent( String svgContent )
{
    clearView();
    Element containerElement = svgContainer.getElement();
    containerElement.setInnerHTML( svgContent );

甚至最简单的SVG的onload也不再执行。

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="744.09448819" height="1052.3622047" version="1.1" onload="alert('Niclas1')">
    <text style="font-size:40px" x="150" y="150" 
          onload="alert('Niclas2')"
          onclick="alert('Niclas3')">
        <tspan x="150" y="150">##0.0°C</tspan>
    </text>
</svg>

简而言之,不会执行任何onload ,但是onclick很好。

有谁知道最近几个月在这个领域发生的任何变化吗?

有没有人有变通办法的想法?

Chrome 34的svg存在严重的错误问题,您的问题可能与以下原因有关: https : //code.google.com/p/chromium/issues/detail ? id = 362354 https://code.google.com/p/铬/问题/细节?ID = 361576

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM