当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 给VML增加事件

CSS样式表
CSS Sprite的一些最佳实践方法
绝对定位(absolute)和浮动定位(float)分析
IE 选择符的4095限制
CSS IE6奇数宽度或高度的bug
CSS Border属性制作小三角
清理CSS样式的几个有用工具
IE7 position:relative的问题
CSS 网页布局中易犯的10个小错误小结
纯CSS搞定按钮、链接点击时的虚线
CSS经典技巧十则
CSS超级技巧大放送合集
漂亮的表格
首届世界CSS设计大赛结果揭晓
HTML表单元素覆盖样式元素问题及其补救之道
网页美工制作规范
top、clientTop、scrollTop、offsetTop
双表法调用样式表
典型的三行二列居中高度自适应布局
用!important解决IE和Mozilla的布局差别
CSS hack浏览器兼容一览表

CSS样式表 中的 给VML增加事件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 205 ::
收藏到网摘: n/a

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 对象,参数就是 函数的内容。控制事件的比较好的办法是使用一个全局变量,一个事件的执行依赖一个全局变量,而另一个事件可以设置这个全局变量,这样一来,就可以让事件来控制事件了。