欢迎您来到懒之才-站长的分享平台!   学会偷懒,并懒出境界是提高工作效率最有效的方法!
首页 > 教程文档 > HTML > 3.5 访问对象的一个技巧

3.5 访问对象的一个技巧

2018-05-06 462 收藏 0 赞一个 0 真差劲 0 去评论

现在你已经可以在页面中移动对象了。但是如果你需要将多个对象按照特定的顺序移动或者执行多个事件触发的行为时,不仅的代码体积会增加(每次访问一个对象时你都必须使用一次if/then 语句),而且每次都必须为某个行为键入document.truck.left 是一件很烦人的事。在Netscape模块中,当你嵌入DIV时,文件对象模块的层次结构就会增加,如下:

<divid="foo">
<divid="bar">
<divid="sna">
</div>
</div>
</div>

要访问foo,则必须执行document.foo, 而要访问bar,则必须执行document.foo.document.bar。而要访问sna,则必须执行document.foo.document.bar.document.sna。我快要受不了啦啦啦!!!

所以你必须解决引用对象时造成的代码体积膨胀的问题,还得避免每次移动一个对象时必须设定条件。但你可以用一个技巧解决这个问题。

任何用JavaScript编写过网页的人都知道任何打开一个小窗口:

windowID = window.open('name', 'http://blah.com/');

这项指令就可打开一个小窗口,但是你还可以通过使用windowID 作一个引用在继续控制追赶窗口。例如windowID.location = 'http://www.taylor.org/就可以改变窗口资源的定位。"windowID.close()"就可关闭该窗口。你所做的只是对一个Javascript对象设置一个引用。在动态HTML中也可以使用同样的技巧。

你可能会注意到在上一页的图表中,大多数定位属性的语法都很相似。只不过它们被用在了不同的对象上。我们可以用一个JavaScript例程解决上面的问题。

<script>  
function setup(){  
if(document.layers){  
daTruck = document.truck;  
} elseif(document.all) {  
daTruck = truck.style;  
}  
}  
</script>

现在moveIt函数可以被改为

function moveIt() {  
daTruck.left = parseInt(daTruck.left) - 5;  
if(parseInt(daTruck.left) < 0){  
daTruck.left = 480;  
}  
setTimeout('moveIt()', 100);  
}

代码短了一些,对吧?下面我们将使页面这些图象都动起来。

返回主目录
暂无界面图片

一、推荐使用迅雷或快车等多线程下载软件下载本站资源。

二、未登录会员无法下载,登录后可获得更多便利功能,若未注册,请先注册。

三、如果服务器暂不能下载请稍后重试!总是不能下载,请点我报错 ,谢谢合作!

四、本站大部分资源是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任.如果您发现本站有部分资源侵害了您的权益,请速与我们联系,我们将尽快处理.

五、如有其他问题,请加网站设计交流群(点击这里查看交流群 )进行交流。

六、如需转载本站资源,请注明转载来自并附带链接

七、本站部分资源为加密压缩文件,统一解压密码为:www.aizhanzhe.com

大家评论