SVGWeb学习总结

来源:互联网 发布:银联支付接口 java 编辑:程序博客网 时间:2024/05/13 17:26

SVGweb 可以让Svg程序在IE或所有支持flash的浏览器上以flash的形式展现,解决了ie浏览器支持svg还需要安装SVGViewer的问题。

 

在Google code上下的SVGweb 内置类一个mini的服务器包只要机器上有jre就可以直接运行起来,附件中有一个精简的SVGWeb可以此目录结构为例介绍一下如何运行SVGWeb实例。

 

将解压的文件夹放到任意目录,用cmd(我比较讨厌用cmd,但是这还是最简单高效的运行java程序的方法)导航到yourpath/svgweb 目录, 执行 java -jar server/webserver.jar ,如果你的机器中jre正确,就已经启动了测试服务了,在浏览器中键入 http://127.0.0.1:8080/samples/helloworld.html 可以访问到实例页面。

 

注意:不要偷懒直接双击webserver.jar文件或在不正确的跟目录执行命令,否则找不到samples目录,也就找不到页面了。

如果你的8080端口被占用了,要先停掉你的tomcat服务器在执行命令。

 

在页面中加入下面的命令

<meta name="svg.render.forceflash" content="true" />

或者使用

http://127.0.0.1:8080/samples/helloworld.html?svg.render.forceflash=true

就可以强制在所有的浏览器上都用flash显示。

 

 

将SVGWeb部署到直接的WEb应用程序里也比较简单

只要保证下面的四个文件放在同一目录中

然后在页面中加入下面的标签

svg.js

svg.swf

svg.htc

svg-htc.jsp (svg-htc.asp svg-htc.php 不同的服务器用不同的文件就行了)

<script src="data/svg.js" data-path="data" data-htc-filename="svg-htc.jsp"></script>

就ok了,以上假设我的文件放在主页面所在的目录下的data文件夹中。见附件

 

做好了这些我们就可以享受SVG开发的乐趣了,无论IE还是其他浏览器(不是绝对),既可以支持在html直接嵌入svg标签,又可以用<object/>标签引入我们的SVG应用程序。

 

但是两种方式在操作svg元素是有所不同,直接嵌入的svg可以通过document.getElementById('myCircle')的方式直接访问到元素,而通过<object/>标签引入要首先通过ocument.getElementById('mySVGObject').contentDocument

获得svg文档对象然后使用我们强大的getElementById方法去访问。

原创粉丝点击