现在遇到了一个头疼的问题: 
我用vml画在浏览器上(IE,遨游)画多边形,本来是用v:polyline来话的,但是考虑到这个封闭比较难解决,于是就考虑用v:shape来画,因为它可以自动闭合,但是就有问题了。 下面的是用前者画的,虽然不封闭,但是基本上符合要求, 
<HTML xmlns:v="urn:schemas-microsoft-com:vml"> 
<HEAD> 
<TITLE> 多边形 </TITLE> <script language="javascript"> 
var flag=0; 
var point=" "; 
function down(event) 

var obj=document.getElementById("mainpane"); 
var x =event.clientX-17; 
var y = event.clientY-12; var polyline=document.getElementById("poly"); 
var fill=document.createElement("v:fill"); 
    fill.opacity=".15"; 
    poly.appendChild(fill); 
if(flag==0) 

point += x +","+ y; 
flag = 1; 

else 

point += ","+x +","+y; 
polyline.points.value = point; } 

document.oncontextmenu = function() 
  { 
  return false; 
  } 
</script> 
</HEAD> 
<style> 
v\:* { BEHAVIOR: url(#default#VML) } 
#mainpane 

    width:800px; 
    height:800px;  
    border:1px 
    outset blue; 
    left:10px; 
    top:10px; 
    background:#cc99FF; 

</style> 
<BODY > 
<div id="mainpane" style="left:0px;top:0px" onclick="down(event);"> 
<v:polyline id=poly  filled="t" fillcolor="#119" strokecolor="red" strokeweight="3px" style="position:absolute"/> 
</div> </BODY> 
</HTML> 
但是如果改为后者画法,就什么也出不来,代码如下 
<HTML xmlns:v="urn:schemas-microsoft-com:vml"> 
<HEAD> 
<TITLE> 多边形 </TITLE> <script language="javascript"> 
var flag=0; 
var path=" "; 
function down(event) 

var obj=document.getElementById("mainpane"); 
var x =event.clientX-17; 
var y = event.clientY-12; var polyline=document.getElementById("polyVml"); 
var fill=document.createElement("v:fill"); 
    fill.opacity=".15"; 
    poly.appendChild(fill); 
if(flag==0) 

path +="m " + x +","+ y  " l " ; 
flag = 1; 
startX=x; 
startY=y; 

else 

path += " "+x + "," + y + "x e"; 
polyline.path.value= path; 


document.oncontextmenu = function() 
  { 
  return false; 
  } 
</script> 
</HEAD> 
<style> 
v\:* { BEHAVIOR: url(#default#VML) } 
#mainpane 

    width:800px; 
    height:800px;  
    border:1px 
    outset blue; 
    left:10px; 
    top:10px; 
    background:#cc99FF; 

</style> 
<BODY > 
<div id="mainpane" style="left:0px;top:0px" onclick="down(event);"> 
<v:shape id=polyVml coordsize="50,50" filled="t" fillcolor="#119" strokecolor="red" strokeweight="3px" style="position:absolute display:none  top:0px left:0px width:50px height=50px"/> 
</div> 
</BODY> 
</HTML> 
这两个不是很相似吗,就是一点的区别,但是,我却搞不定,希望大家看一下,帮我解决一下。 如果还有能力的,帮小弟解决一下,双击鼠标左键,如何让画法停止,同时图形也小时,等待下次可以重新画。主要使用在浏览地图的查询功能上。 万分感激!!!