欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

给VML增加事件

程序员文章站 2024-02-29 14:12:04
vml 和 html 的紧密结合,使的给 vml 增加事件变得很容易.所有的 html 里面的事件都可以应用到 vml 中间来!下面的例子是演示:当鼠标移动到圆的时候,圆就...
vml 和 html 的紧密结合,使的给 vml 增加事件变得很容易.所有的 html 里面的事件都可以应用到 vml 中间来!下面的例子是演示:当鼠标移动到圆的时候,圆就跟着鼠标移动了,当鼠标点击后,圆停止移动。

<v:oval id="circle" style="position:relative;width:100;height:80;" onmouseover="move()" fillcolor=red />
<script>
var canmove=false;
function move()
{
 circle.style.position="absolute";
 canmove=true;
 document.onmousemove=new function("if(canmove){circle.style.posleft=event.x;circle.style.postop=event.y;}");
}
document.onclick=new function("canmove=false");
</script>



    不知道你有没有注意,vml的事件区域是严格按照本身的形状的,并不是像图片那样,都是矩形。顺便介绍一下 function 对象,使用function 对象,如果函数的内容比较少,而且调用就一次,就可以使用 function 对象了,使用方法就是用 new 创建一个 function 对象,参数就是 函数的内容。控制事件的比较好的办法是使用一个全局变量,一个事件的执行依赖一个全局变量,而另一个事件可以设置这个全局变量,这样一来,就可以让事件来控制事件了。
相关标签: 给VML增加事件