以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 SVG/GML/VRML/X3D/XAML 』  (http://bbs.xml.org.cn/list.asp?boardid=21)
----  在SVG中如何显示鼠标提示框,及请高手解决其中bag  (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=37981)


--  作者:chilong_zh
--  发布时间:9/16/2006 5:24:00 PM

--  在SVG中如何显示鼠标提示框,及请高手解决其中bag
[B]在SVG中如何显示鼠标提示框
代码如下:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
  "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="100%" height="100%" onload ="initialize(evt)">
  
  <script type="text/ecmascript">
    <![CDATA[
    var svgdok, tttelem, tooltip, ttrelem;
    

    function initialize(evt)
    {
      svgdok = evt.getTarget().getOwnerDocument();
      
      tttelem = svgdok.getElementById("ttt");
      ttrelem = svgdok.getElementById("ttr");
      tooltip = svgdok.getElementById("tooltip");
   
   }
    
    function mOver(evt, text)
    {
      tttelem.childNodes.item(0).data = text;
      ttrelem.setAttribute("x",evt.clientX + 25);
      ttrelem.setAttribute("y",evt.clientY + 25);
      tttelem.setAttribute("x",evt.clientX + 30);
      tttelem.setAttribute("y",evt.clientY + 37);
      ttrelem.setAttribute("width",tttelem.getComputedTextLength()+10);
      
      tooltip.setAttribute("visibility","visible");
    }
    
    function mOut(evt)
    {
      tooltip.setAttribute("visibility","hidden");
    }
    ]]>
  </script>

  <g id="testG" onmouseover = "mOver(evt, 'Welcome To Here!')" onmouseout = "mOut(evt)">
    <rect x="100" y="100" width="100" height="50" style="fill:rgb(120,255,255);"/>
  </g>

  <g id ="tooltip" visibility =" hidden">
    <rect id="ttr" x="0" y="0" width="100" height="15" fill="rgb(255,255,255)" stroke="rgb(9,0,130)" stroke-width="1" shape-rendering="optimizeSpeed"/>
    <text id="ttt" x="0" y="0">dyn. Text</text>
  </g>

</svg>
在IE6中显示如下图:

此主题相关图片如下:
按此在新窗口浏览图片


其中的bag,在图形不平移时提示框的位置可以正常显示,可是如果我们将图形平移之后提示框的位置与鼠标也发生了相应的平移,请高手解释一下这问题的原因和解决办法。
谢谢!


--  作者:yaohuhuowu
--  发布时间:9/23/2006 12:06:00 AM

--  
http://www.xml.org.cn/dispbbs.asp?boardID=21&ID=22821

这个网页讲了解决方法 小弟学的不好哥哥研究一下,看看怎么能加进去。把结果贴出来让小弟也学习学习。


--  作者:yaohuhuowu
--  发布时间:9/26/2006 3:42:00 PM

--  
那个代码我加进去了,发现如果不用ALT键平移图像的话显示的东西就是正常的,一平移就出现问题了。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
50.781ms