1

我在我的网站中使用了 nicescroll jquery 插件。我还在我的搜索页面上使用了谷歌的自定义搜索。自定义搜索有一个仅结果界面,我在<div>.

nicescroll 以这种方式工作,如果页面需要滚动条,它将显示一个。如果页面不需要滚动条,则不会显示滚动条。

我在我的母版页中使用脚本标签来调用 jquery 和 nicescrolll 库,并且我在我的搜索页面中使用脚本标签来加载谷歌的自定义搜索脚本。

问题是在 IE 中,(因为 google 的自定义搜索需要一些时间来加载结果)滚动条不会出现(我认为是因为起初页面不需要滚动条,因为搜索结果没有'尚未显示!但即使结果显示后,IE 中仍然没有滚动条)。我注意到如果我调整 IE 窗口大小然后恢复到原来的大小,滚动条会出现。这是我的代码:

//these scripts load in my master page(since I need the scrollbar for my other pages)
<script type="text/javascript" src="/Scripts/jquery-1.7.1.js"></script>
<script type="text/javascript" src="/Scripts/jquery.nicescroll.js"></script>
<script type="text/javascript">
    $(window).load(function () {
        $("html").niceScroll();
        } 
    );
</script> 

//this script loads in my search.aspx page where I want the search results to appear
<script type="text/javascript">
    $(document).ready(function () {
        (function () {
            var cx = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
            var gcse = document.createElement('script');
            gcse.type = 'text/javascript';
            gcse.async = true;
            gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
                '//www.google.com/cse/cse.js?cx=' + cx;
            var s = document.getElementsByTagName('script')[0];
            s.parentNode.insertBefore(gcse, s);
        })();
    });

//and here's how I am showing the results
<div id="searchWrapper">
    <gcse:searchresults-only></gcse:searchresults-only>
</div>

如您所见,我什至尝试将 nicescroll 脚本放入window.load事件中,因为它会在之后发生document.ready。但问题仍然存在!

ps:我的搜索页面在 chrome 和 firefox 上运行良好。我只有 IE 有这个问题。

关于我的问题有什么想法吗?

4

0 回答 0