首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >两个滚动条问题?

两个滚动条问题?
EN

Stack Overflow用户
提问于 2011-09-04 13:26:48
回答 2查看 2.2K关注 0票数 0

在这个帖子上,我做了一个测试,但是我还是遇到了一些问题--当您单击显示图像时,页面上有两个滚动条。

当图像被显示时,我不需要背景滚动条,我只需要图像容器上的滚动条。

怎样才能隐藏背景滚动条而不使页面跳变呢?

css,

代码语言:javascript
复制
#container-image {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-x: auto;
    overflow-y: scroll;
    z-index:100;
}

html,

代码语言:javascript
复制
<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,

代码语言:javascript
复制
$(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;
        });

    });

这是测试页面

编辑:

只是设法隐藏了body滚动条,它在所有浏览器上都可以接受IE8 --我如何修复IE??

代码语言:javascript
复制
$(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:

代码语言:javascript
复制
$('body,html').css('overflow', 'hidden');
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-09-04 13:31:33

在显示图像时,在正文上设置overflow: hidden,以隐藏滚动条:

代码语言:javascript
复制
$('body').css('overflow', 'hidden');
票数 2
EN

Stack Overflow用户

发布于 2011-09-04 13:32:34

我刚刚在Firebug中删除了以下样式:

代码语言:javascript
复制
overflow-x: auto;
overflow-y: scroll;

我不用卷轴就能看到背景。试试看。

但是在这种情况下,如果背景图像比可见的浏览器窗口更大,您将永远无法看到整个图像,因为position:fixed

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7299495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档