以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 SVG/GML/VRML/X3D/XAML 』  (http://bbs.xml.org.cn/list.asp?boardid=21)
----  如何在svg模拟click事件  (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=66577)


--  作者:快乐汉字
--  发布时间:8/29/2008 10:40:00 PM

--  如何在svg模拟click事件
在js中可以模拟click 事件,在 html 中测试通过,但是在svg中却失败了
--  作者:Qr
--  发布时间:8/30/2008 9:04:00 AM

--  
用onclick 试试
--  作者:xzm12345
--  发布时间:5/27/2010 4:49:00 PM

--  
<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<svg id="svgMain" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100%" height="100%">
  <script><![CDATA[
  function clk1(evt)
  {
    var svgDoc = evt.target.ownerDocument ;
    var rect1 = svgDoc.getElementById("rect1") ;
    var rect2 = svgDoc.getElementById("rect2") ;
    //evt.target = rect1 ; //想这么做,但是失败了,ASV上测试通过
    //alert(evt.target == rect1) ;
    rect2.dispatchEvent(evt) ;
  }
  function clk2(evt, str)
  {
    alert(str) ;
    //alert(evt.target.getAttribute("id")) ;
  }
  ]]>
  </script>
  <rect id="rect1" x="50" y="50" width="100" height="100" onclick="clk1(evt)" />
  <rect id="rect2" x="200" y="50" width="100" height="100" onclick="clk2(evt, 'hello')" />
</svg>
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
7,734.375ms