如何在Page Render期间更改颜色SVG?

时间:2016-03-06 07:32:12

标签: javascript jquery css html5 svg

首先,我知道如何动态更改SVG的颜色。我使用过这个问题的解决方案:

jQuery SVG image replacement

但我的情况有所不同。

在我的页面上,我有几个图标(SVG),还有一个颜色选择器。用户可以使用colorpicker更改图标。 一切正常。

现在我想用用户选择的图标颜色生成整个页面的PDF。

我正在使用第三方PDF生成库来获取我的页面URL并生成该PDF。但问题是颜色不会应用于图标并生成PDF。我知道这个问题的原因,因为在文档就绪时我将所有SVG img标签转换为实际的SVG标签,然后将颜色应用于用户选择的颜色。这一切都发生在页面渲染后。

但PDF生成库不会等待此过程完成并在所有SVG图像转换为SVG并将颜色应用于它们之前生成PDF。

我不知道先等待整个过程完成然后生成PDF。

我尝试过缓存页面,但这也无济于事。

任何帮助都将受到高度赞赏。 感谢

1 个答案:

答案 0 :(得分:0)

我做到了。

解决方案是将代码包装在IIFE中,以便它在页面加载时立即执行,而不是在DOM的ready事件上执行。

相关问题