ざくっと手段を書きますと、「thickbox.js」の関数 tb_position の処理をまるごと下記に置き換えます。
function tb_position() { // hot fixed for microsuck internet exploiter
jQuery("#TB_window").css({marginLeft: '-' + parseInt((TB_WIDTH /2),
10) + 'px', width: TB_WIDTH + 'px'});
var dtop=parseInt((TB_HEIGHT / 2),10);
var scrolledDown=0;
if(jQuery.browser.msie){//ie hax
if(document.body != null){
scrolledDown=document.body.scrollTop;
}
else if(document.documentElement != null){
scrolledDown = document.documentElement.scrollTop; //ie7
}
}
if(scrolledDown){
jQuery("#TB_window").css({marginTop: '+' + scrolledDown + 'px'});
}
else{
jQuery("#TB_window").css({marginTop: '-' + dtop + 'px'});
}
}
これだけで、スクロールした状態でも中央にウインドウを出してくれますです。
2 件のコメント:
ありがとうございます。
xmlで作ったページに採用したのですが(xml宣言があるとうまく行かないとかで)、昨日一日苦労して解決せず、thickboxやめてshadowboxにするか、なんて試したけど同じことであきらめかけていたのに、えうろぐさんのおかげでうまくいきました!
本当に助かりました。
コメントを投稿