同时在多个对象上调用方法

时间:2012-02-03 16:03:02

标签: javascript object css3 methods

我正在为html内容创建一个可滑动的容器。通过更改每个html单元格的转换属性来滑动内容。目前,我正在使用循环迭代每个单元格,以在生成输入时更新转换。

当每个单元格到达可视空间之外的边界时,它会移动到另一侧,以创建无限内容的幻觉。

我的问题是“接缝”中的空间(行中第一个和最后一个单元格之间)并不总是不变的,它会根据滚动的速度进行扩展和收缩,我只能推断这是因为我如何迭代我的对象。

当向前/向后滑动时,第一个单元格会跟上最后一个单元格或两个之间的间隙变宽。

有没有办法同时在多个对象上调用方法?

我创建我的单元格对象有点像:

cell = function(target){
    this.self = target
}
function $cell_slide(delta){
    this.self.style.webkitTransform='translate3D('+delta+'px,0px,0)'
}
cell.prototype.slide = $cell_slide

var _cells = target.querySelector('.cell-wrap').querySelectorAll('.cell')
var ncells = _cells.length
var $cells = []
for(var i=ncells;i--;){ $cells[i] = new cell(_cells[i]) }

然后当用户滚动/滑动等以生成位置数据的变化时,我调用这样的幻灯片方法:

//... 
for(var i=ncells;i--;){ $cells[i].slide(delta) }
//... 

0 个答案:

没有答案