在javascript中设置此函数最有效的方法是什么?
这里完全没有问题,我假设有一种方法可以写得更快/更小。有什么建议吗 很抱歉,如果它没有真正减少&超出我正在使用的框架,但这里有一个实例,如果这有帮助的话 实例: (仅适用于webkit,我只在chrome中测试过)在javascript中设置此函数最有效的方法是什么?,javascript,performance,Javascript,Performance,这里完全没有问题,我假设有一种方法可以写得更快/更小。有什么建议吗 很抱歉,如果它没有真正减少&超出我正在使用的框架,但这里有一个实例,如果这有帮助的话 实例: (仅适用于webkit,我只在chrome中测试过) 我不太了解您的应用程序,但这里有一些东西可能会为您指明正确的方向 这肯定是不实用的,因为我并没有太多的背景信息,并且做了一些假设: var BannerCount=5; var-PSD=[]; 对于(i=0;i
我不太了解您的应用程序,但这里有一些东西可能会为您指明正确的方向 这肯定是不实用的,因为我并没有太多的背景信息,并且做了一些假设:
var BannerCount=5;
var-PSD=[];
对于(i=0;i
我们可能需要一个对象bannerdrop将保存您拥有的任何属性。所以我们要做的是声明这个对象的数组,如下所示:
function bannerdrop(y){
this.y = y;
this.on('click', function(){bookmark(this);});
}
function bookmark(obj){
var down;
var away;
var small;
//animations
obj.animate({
properties:{y:down},
curve:"spring(100,15,200)"
});
}
var bannerArray = new Array(new bannerdrop(-200), new bannerdrop(-200), new bannerdrop(-200));
哇。是的,当然可以改进,但对于创建数组和循环来说,可能是一个更好的问题?啊,我不知道,谢谢!
var BannerCount = 5;
var PSD = [];
for (i = 0; i < count; i++) {
PSD[i] = {};
PSD[i].btn = document.getElementById('bannerbtn-' + i);
PSD[i].btn.on("click", function (eevent) {
Bookmark(eevent.srcElement);
});
PSD[i].y = -200;
PSD[i].on("click", function (eevent) {
Bookmark(eevent.srcElement);
});
PSD[i].drop = document.getElementById('bannerdrop-' + i).addEventListener("click",
function (eevent) {
Bookmark(eevent.srcElement);
});
}
function Bookmark(itemPSD) {
var down;
var away;
var small;
if (itemPSD.btn.style.opacity == 1) {
away = 0;
small = 0.03;
down = -13;
} else if (itemPSD.btn.style.opacity === 0) {
away = 1;
small = 1;
down = -200;
}
//animations
itemPSD.drop.animate({
properties: {
y: down
},
curve: "spring(100,15,200)"
});
itemPSD.btn.animate({
properties: {
opacity: away,
scale: small
},
curve: "linear",
time: 100
});
}
function bannerdrop(y){
this.y = y;
this.on('click', function(){bookmark(this);});
}
function bookmark(obj){
var down;
var away;
var small;
//animations
obj.animate({
properties:{y:down},
curve:"spring(100,15,200)"
});
}
var bannerArray = new Array(new bannerdrop(-200), new bannerdrop(-200), new bannerdrop(-200));