正在为一个项目而烦恼
主要功能是实现因果分许图,俗称鱼骨图、鱼刺图
项目本身是基于JAVA Web的,在实现方式上考虑过:Flash、VML、SVG和使用JS控制图片组合
Flex接触不多,AS3倒是了解一些,以前做过一个 组织机构图 的小功能。
由于因果图的分支是不限制的,可能会很多,但Flash不能在运行时动态改变场景大小,所以就放弃了
VML很熟悉,04/05年的时候写过图表组件,只有折线图和柱图,但灵活性相当厉害,当时IE还是绝对主流的
缺点很明星,现在用FF、OPERA的人不在少数,不可能只面向IE了
使用JS控制图片组合的方式,是万不得已的最后选择,应该可以实现,但相当累,而且各浏览器的兼容性问题更要命
目前,首选SVG,标准化的技术,FF、OP等浏览器原生支持,IE安装个ADOBE的插件也还可以,因此将开发路线定在SVG方向
以下贴一些SVG的资料(转自W3School):
SVG 意为可缩放矢量图形(Scalable Vector Graphics)
SVG 文件可通过以下标签嵌入 HTML 文档:
<
embed
>
、
<
object
>
或者
<
iframe
>
。
HTML 页面中的 SVG
下面,你会看到三种把 SVG 文件嵌入 HTML 页面的不同方法。
使用 < embed > 标签
< embed > 标签被所有主流的浏览器支持,并允许使用脚本。
注释:当在 HTML 页面中嵌入 SVG 时使用 < embed > 标签是 Adobe SVG Viewer 推荐的方法!然而,如果需要创建合法的 XHTML,就不能使用 < embed > 。任何 HTML 规范中都没有 < embed > 标签。
语法:
< embed src ="rect.svg" width ="300" height ="100"
type ="image/svg+xml"
pluginspage ="http://www.adobe.com/svg/viewer/install/" />
注释:pluginspage 属性指向下载插件的 URL。
使用 < object > 标签
< object > 标签是 HTML 4 的标准标签,被所有较新的浏览器支持。它的缺点是不允许使用脚本。
注释:假如您安装了最新版本的 Adobe SVG Viewer,那么当使用 < object > 标签时 SVG 文件无法工作(至少不能在 IE 中工作)!
语法:
< object data ="rect.svg" width ="300" height ="100"
type ="image/svg+xml"
codebase ="http://www.adobe.com/svg/viewer/install/" />
注释:codebase 属性指向下载插件的 URL。
使用 < iframe > 标签
< iframe > 标签可工作在大部分的浏览器中。
语法:
< iframe src ="rect.svg" width ="300" height ="100" >
</ iframe >
我期望....
如果仅仅通过引用 SVG 的命名空间,就能够把 SVG 元素之间添加到 HTML 代码中,那就太棒了,这像这样:
< html xmlns:svg ="http://www.w3.org/2000/svg" >
< body >
< p > This is an HTML paragraph </ p >
< svg:svg width ="300" height ="100" version ="1.1" >
< svg:circle cx ="100" cy ="50" r ="40" stroke ="black"
stroke-width ="2" fill ="red" />
</ svg:svg >
</ body >
</ html >
HTML 页面中的 SVG
下面,你会看到三种把 SVG 文件嵌入 HTML 页面的不同方法。
使用 < embed > 标签
< embed > 标签被所有主流的浏览器支持,并允许使用脚本。
注释:当在 HTML 页面中嵌入 SVG 时使用 < embed > 标签是 Adobe SVG Viewer 推荐的方法!然而,如果需要创建合法的 XHTML,就不能使用 < embed > 。任何 HTML 规范中都没有 < embed > 标签。
语法:
< embed src ="rect.svg" width ="300" height ="100"
type ="image/svg+xml"
pluginspage ="http://www.adobe.com/svg/viewer/install/" />
注释:pluginspage 属性指向下载插件的 URL。
使用 < object > 标签
< object > 标签是 HTML 4 的标准标签,被所有较新的浏览器支持。它的缺点是不允许使用脚本。
注释:假如您安装了最新版本的 Adobe SVG Viewer,那么当使用 < object > 标签时 SVG 文件无法工作(至少不能在 IE 中工作)!
语法:
< object data ="rect.svg" width ="300" height ="100"
type ="image/svg+xml"
codebase ="http://www.adobe.com/svg/viewer/install/" />
注释:codebase 属性指向下载插件的 URL。
使用 < iframe > 标签
< iframe > 标签可工作在大部分的浏览器中。
语法:
< iframe src ="rect.svg" width ="300" height ="100" >
</ iframe >
我期望....
如果仅仅通过引用 SVG 的命名空间,就能够把 SVG 元素之间添加到 HTML 代码中,那就太棒了,这像这样:
< html xmlns:svg ="http://www.w3.org/2000/svg" >
< body >
< p > This is an HTML paragraph </ p >
< svg:svg width ="300" height ="100" version ="1.1" >
< svg:circle cx ="100" cy ="50" r ="40" stroke ="black"
stroke-width ="2" fill ="red" />
</ svg:svg >
</ body >
</ html >
宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒