在這個post之後,我做了一個測試,但是我仍然遇到了一些問題 - 當你點擊顯示圖像時,頁面有兩個滾動條。兩個滾動條的問題?
當圖像顯示時,我不需要背景滾動條,我只需要圖像容器上的滾動條。
如何隱藏背景滾動條而不使頁面跳動?
的CSS,
#container-image {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow-x: auto;
overflow-y: scroll;
z-index:100;
}
的HTML,
<p>Please scroll down until you see the click button</p>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<a href="#" class="get-photo">click</a>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<div id="container-image" style="display:none">
<ul id="items-image">
<li><img src="winnie-the-pooh-2011-4.jpg"/></li>
</ul>
</div>
jquery的,
$(document).ready(function(){
$('.get-photo').click(function(){
var object = $(this);
var object_path = object.attr('href');
var scroll_top = $(window).scrollTop();
//alert(object_path);
$('#container-image').show();
return false;
});
});
下面是測試page。
編輯:
只是設法隱藏body
滾動條,它適用於所有的瀏覽器IE8接受 - 我怎麼能修復IE?
$(document).ready(function(){
$('.get-photo').click(function(){
$('body').css('overflow', 'hidden');
var object = $(this);
var object_path = object.attr('href');
var scroll_top = $(window).scrollTop();
var height_document = $(document).height();
//alert(object_path);
$('#background-photo').css({
height:height_document + 'px',
display:'block'
});
$('#container-image').show();
return false;
});
$('#items-image img').click(function(){
var object = $(this);
$('body').css('overflow', 'auto');
$('#container-image').hide();
$('#background-photo').hide();
return false;
});
});
編輯:
固定IE8:
$('body,html').css('overflow', 'hidden');
你的樣品頁有[193個驗證錯誤(HTTP://驗證。 w3.org/check?uri=http%3A%2F%2Flauthiamkok.net%2Fdump%2Fposition.fixed%2F&charset=%28detect+automatically%29&doctype=Inline&group=0)。注意這些以及您跨瀏覽器一致性增加的機會。也考慮使用利潤率或其他CSS定位而不是百萬'
'。 – Sparky