能用javascript画多边形,然后鼠标点击某个顶点可以拖动,改变多边形形状吗?
我所以知道的用vml好像可以做但是我不会,那位高手能帮帮忙。

解决方案 »

  1.   

    为啥不用flash做 这玩意用js做不蛋疼么
      

  2.   

    同意楼上,用简单的方法:flash
      

  3.   

    没用过flash,那个学起来容易吗,也是要写代码实现的吗,有什么开发工具?
      

  4.   

    现在很多浏览器支持html5了.可以用html5做.查下html5的资料.很多的.
      

  5.   

    给点具体的好不好,我问的是用JS vml实现别乱推荐。下面代码是实现画一个多边形的,怎么才能实现拖动,和改变形状,谁能改改,或给点思路。
    <HTML xmlns:v>
      <head>
      <title>手绘多边形</title>
      <meta name="ContentType" content="text/html" />
      <meta name="CharSet" content="GB2312" />
      <style type="text/css">
      v\:* {behavior:url(#default#VML);}
      </style>
      <script language="javascript">
     var Working=false;//判断是否画图的状态
     var poly1=null,oldvalue="",oldx=0,oldy=0  //为了完成铅笔、记忆点等连续线段
     var xx,yy;
     //鼠标单击事件
     function divMousedown()
     {
     if(!Working)//第一次点击鼠标
     {
      xx=event.x;
      yy=event.y;
      poly1=div1.appendChild(document.createElement("<v:shape path='m0,0 l0,0' filled='true' style='POSITION:absolute;z-index:1;left:"+xx+";top:"+yy+";width:100;height:100;filter: Alpha(Opacity=60);' strokecolor='black' strokeweight='1' coordsize='100,100' fillcolor='yellow'/>"));
      oldvalue=poly1.path.value.replace("e","");
      oldx=xx;
      oldy=yy;
      Working=true;
     }
     else
     {
      if (poly1!=null) oldvalue=poly1.path.value.replace(" e","");
     }
     }
     //鼠标移动的时候
     function divMouseMove()
     {
      tempx=event.x;
      tempy=event.y;
      if (poly1!=null)
      {
       poly1.path.value=oldvalue+","+(tempx-oldx)+","+(tempy-oldy);
       poly1.path.value=poly1.path.value.replace(",0,0,",",0,").replace(",0 e","e");
      }
     }
     
     function divMouseUp()
     {
      if(event.button==2) 
      {
       poly1.path.value=oldvalue+"x e";
       Working=false;
       poly1=null;
      }
     }
      </script>
      <body style="margin:0px;">
      <div id="div1" style="position:absolute; height:100%; width:100%; border:1px solid 0000FF;" onMouseDown="divMousedown();" onMouseMove="divMouseMove();" onMouseUp="divMouseUp();" oncontextmenu="return false;">在页面上点击鼠标左键开始,右击鼠标右键结束</div>
      </body>
      </html>
      

  6.   


    用raphaeljs,构建在svg和vml之上跨浏览器矢量图js库
    http://raphaeljs.com/ichart.html