站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Javascript 专题为你的DHTML添活力

为你的DHTML添活力

摘要: 为你的DHTML添活力
<tr> <td>

*purpleendurer修正了原文中的一些错误

你可以通过IE为你的HTML元素添加行为,建立面向对象的页面设计方法。Phillip Perkins建立了一个

对象,当用户拖动它时,它会在限定的
内继续定向运行。

Macromedia Flash可以使开发者免受网络浏览器与互操作解决方案的限制。但是,局限于Flash让你无法体验到网络浏览器的许多特色。

例如,你可以通过IE为HTML元素添加行为,建立对象面向的页面设计方法。在这个例子中,我会建立了一个

对象,当用户拖动它时,它会在限定的
内继续定向运行。

为HTML添加行为的能力是设计的一个关键部分。在IE中,这通过相关的样式来实现。添加行为的样式特性即“behavior”。你可以通过嵌套的

<script language="JavaScript">

function Point(pX, pY)
{
this.posX = pX;
this.posY = pY;
}

function CSlope(P1, P2)
{
this.deltaY = P2.posY - P1.posY;
this.deltaX = P2.posX - P1.posX;
this.m = (P2.posY - P1.posY)/(P2.posX - P1.posX);
}

function _slopeAdd(P1)
{
var lPoint = new Point((P1.posX + this.deltaX), (P1.posY + this.deltaY));
return lPoint;
}

CSlope.prototype.add = _slopeAdd;

function CGeometry() {}

function _slope(P1, P2)
{
var lSlope = new CSlope(P1, P2);
return lSlope;
}

CGeometry.prototype.slope = _slope;
var Geometry = new CGeometry();
var objStack = [];

function startMove(obj, t)
{
var id = objStack.push(obj);
objStack[id-1].interval = setInterval("objStack[" + (id - 1) + "].moveMe()", t);
}
</script>

</head>

<body style="font-family: Verdana; font-size: 24pt;">



dog



</body>


HTML页面不过是包含

及作为组件元素的嵌套
。在JavaScript内,有一些支持对象与功能来帮助进行组件计算。值得注意的是,有一个对象栈— objStack —变量,在间隔中断过程中,可以用来帮助管理对组件moveMe()方法的调用。

拷贝这些代码并将它粘贴到你自己的文件中。记得把你的HTC文件命名为component.htc,特别用于行为样式特性。在IE 5.0或更高版本中运行这个例子,看着你的对象充满活力。

</td> </tr> </table>
↑返回目录
前一篇: UBB编辑器原来就这么简单
后一篇: Javascript屏蔽键盘的代码