如何raphael.serialize只有可见元素?

时间:2011-08-14 07:52:09

标签: javascript raphael

我想在我的论文中仅序列化可见元素。

我做过一些关于检查元素是否可见的研究,并在How to know if raphael object is hidden?上找到答案

我改变了raphael.serialize.js文件,在第16行我做了这个改变:

if (node && node.type) {

if (node && node.type && node.style.display !== "none") {

但是通过这种方式我得到了空的内容。

我怎样才能使这个工作?

更新: 我需要的是将纸张转换为svg。基于:http://www.benbarnett.net/2010/06/04/export-svg-from-raphael-js-to-create-a-png-bitmap/

2 个答案:

答案 0 :(得分:1)

我发现了一个解决方案。 我有关于git的通知,有一些拉动请求,所以在检查其中一个是我的问题的anwser。 这里有详细信息:https://github.com/jspies/raphael.serialize/pull/3/commits

然而,需要添加的是:

 if( node.node.style.display == "none" ) break;

在每个node.type

的情况下

答案 1 :(得分:0)

我不熟悉Raphaël,但也许有些节点没有style属性。

尝试类似:

if (node && node.type && (node.style || {}).display !== "none") {
    // ...
}
相关问题