2 つのラッパー div が並んでいます。左の列の選択した div の位置と一致するように、右の列に div を並べたい。
フィドルでは、右側の列の各 div を、左側の列の 2 つおきの div の上部に揃える必要があります。左側の 2 つの div ごとに 1 つの div [x] が必要です。
それはすべて動的に作成されるため、フィドルをhttp://jsfiddle.net/sKZXJ/のように作成しました
HTML:
<!-- Extra height added because that seems part of the problem -->
<div style="height:60px;"></div>
<div id="scroller">
<div id="wrapper1"></div>
<div id="wrapper2"></div>
</div>
CSS:
#scroller {
height:300px;
width:60px;
overflow-x:scroll;
}
#wrapper1 {float:left; width:15px;}
#wrapper2 {float:left; width:15px;}
.littleOne {
margin-top:1px;
position:relative;
height:40px;
background-color:#006600;
}
.littleTwo {
margin-top:1px;
position:relative;
background-color:#00CCCC;
}
楽しい部分:
$(document).ready(function() {
// Fill wrapper1 with divs
for(var i=0;i<50;i++) {
$('#wrapper1').append('<div id="a'+i+'" class="littleOne"></div>');
}
// Add selected divs to wrapper2 in matching positions
var pos = 0;
for(var i=0;i<50;i+=2) {
$('#wrapper2').append('<div id="b'+i+'" class="littleTwo">X</div>');
pos = $('#a'+i).position().top - $('#scroller').position().top;
$('#b'+i).css('top', pos+'px');
}
});