1. ホーム
  2. javascript

[解決済み] 縦スクロールバーが2つ表示されるのはなぜですか?

2022-02-17 04:57:33

質問

こんな感じで、最初は本文スクロールバーを非表示にして、リンクがクリックされたら表示させるようにしました。

$('body').css('overflow', 'hidden');
$('#site').click(function(e) {
    $('#wrapper').remove();
    $('body').css('overflow', 'scroll');
    return false;
});

最初はスクロールバーを隠して、オーバーレイ(絶対位置のdiv (#wrapper))のスクロールバーだけを表示していましたが、リンク(#site)をクリックしてスクロールバーを再び表示(オーバーレイも削除)すると、今度は2つのスクロールバーが表示されます:1つは機能しており、もう1つは無効になっています。

HTMLです。

<div id="wrapper">
   --- some content ----
   <a href="" id="site"></a>
</div>

<div>
   --- rest of the website ---
</div>

CSSです。

#wrapper {  
    background-color: #CCC;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99999; 
    height: 800px;
}

何が悪かったのでしょうか?

どうすればいいですか?

私の問題を解決する方法を見つけました。私はちょうど追加する必要がありました。

$('html').css('overflow', 'hidden');