私はイベントのページを作成しており、下部に多くのロゴを配置しました。右から左にスライドします。私はjQueryを使用せず、純粋なJavascriptのみを使用しており、最高のパフォーマンスについて疑問に思っています. 私のコードは機能しますが、それを行うためのより良い方法がありますか? この「アニメーション」は時々遅くなると思います。
var banners = [],
links = [];
links[0] = 'http://...',
banners[0] = 'img/logo1.png',
...
var banLenght = banners.length,
banContent = "<div id='bannersBack'><div id='banners' style='display:inline-block;'>";
for (var ii =0; ii < banLenght; ii++){
banContent += "<a target='_blank' href='"+links[ii]+"'><img src='"+banners[ii]+"'></a>";
}
banContent += "</div></div>";
document.getElementById('sliding-logos').innerHTML = banContent;
var actual = document.getElementById('banners');
var move = function(){
position = actual.offsetLeft;
position -= 1;
actual.style.left = position +"px";
// 3000 is sum of banner's width
if (position > -3000) {
setTimeout( move, 20);
}else {
actual.style.left = "0px";
move();
}
};
move();