作者toshii (用了十年的昵称要改一下!)
看板Ajax
标题[问题] 请问在HTML档里嵌入SVG档?
时间Wed Mar 25 11:05:06 2009
在一个SVG档里面写了一些javascript程式,
直接开档案起来很正常
可是我用做好的HTML网页去读这个SVG档,
SVG里面的程式都没有动作
请问我该如何去让触发里面的event
下面是一个正常的test.SVG档
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"
http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="
http://www.w3.org/2000/svg">
<rect id="bkrect" width="600" height="300" fill="white" stroke="gray"
onmouseover="run(evt)"/>
<script type="text/javascript">
<![CDATA[
function run(evt)
{
var eventType=evt.type;
alert("this is SVG!,eventType = "+eventType)
}
]]>
</script>
</svg>
下面是HTML档
<html><head>
<title>SVG in HTML</title>
</head>
<body>
<object id="svg1" data="test.svg" width="700" height="500"
type="image/svg+xml"></object>
</body>
</html>
我mouse移入这个<object>完全没有反应耶~~
我知道可以在HTML写一些
xx = document.getElementById("svg1");
yy = xx.contentDocument;
再加上getAttribute,setAttribute来让svg档做出一些动画
但是写在svg里面的程式为什麽不会动?
另外请问为什麽要加<![CDATA[ 跟 ]]>
不写好像也没关系呀~~
--
麻将 手顺也~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.146.196.216
※ 编辑: toshii 来自: 122.146.196.216 (03/25 11:08)
1F:推 buganini:稍微去查一下XML你就会知道什麽是CDATA 03/26 00:39
2F:→ buganini:另外我随便google了一下 别人好像用text/ecmascript 03/26 00:39
3F:→ buganini:不晓得有没有影响 03/26 00:39