これを要件に合わせて機能させるには、JavaScript を使用して、固定位置の div を使用して読み込み中の画像を表示部分のどこに配置する必要があるかを判断し、ユーザーがウィンドウのサイズを変更したりウィンドウをスクロールしたりするときに再配置する必要があります。希望の位置に。
$(window).scroll(function() {
scrolling();
});
$(window).resize(function() {
scrolling();
});
scrolling();
function scrolling() {
var windowHeight = $(window).height();
var scrollTop = $(window).scrollTop();
var offsetTop = $('#thediv')[0].offsetTop;
var offsetHeight = $('#thediv')[0].offsetHeight;
var offsetWidth = $('#thediv')[0].offsetWidth;
var top = offsetTop - scrollTop;
top = top < 0 ? 0 : top;
var bottom = (scrollTop + windowHeight) - (offsetHeight + offsetTop);
bottom = bottom < 0 ? 0 : bottom;
$('.image').css('top', top);
$('.image').css('bottom', bottom);
$('.image').css('width', offsetWidth);
}
div の幅を変更する場合は、常にscrolling()
関数を呼び出して位置を再計算できるようにする必要があることに注意してください。
CSS を使用して中央に表示できるように、読み込み中の画像を背景画像として固定 div に追加しました。
.image {
position: fixed;
text-align:center;
background-image:url('http://i.stack.imgur.com/FhHRx.gif');
background-repeat:no-repeat;
background-position:center center;
background-color:rgba(255,255,255,.4);
}
これがJSFiddle http://jsfiddle.net/QWB9x/89/です