簡體   English   中英

如何在dijit菜單上放置垂直滾動條

[英]How to put a vertical scroll bar on a dijit menu

我想創建一個具有vertical滾動條的dijit菜單。

我試過這樣做:

pMenu = new dijit.Menu({
           templateString: '<div style="height: 75px; overflow-y: auto; overflow-x:hidden">' + dojo.cache("dijit", "templates/Menu.html") + '</div>'
        });

當我這樣做時,垂直滾動條出現,但寬度是小(它沒有擴展,以考慮滾動條寬度)。

有一個更好的方法嗎? 我基本上想在dijit.menu上有一個maxHeight屬性

這只是一個向您展示如何檢測元素滾動條存在的想法:

<html>
    <head>
        <title>Detect Scrollbars Presence</title>
        <script type="text/javascript">
            function verticalScrollBarExists(id)
            {
                var element = document.getElementById(id);
                oldScrollTop = element.scrollTop;
                element.scrollTop = 1;
                if (element.scrollTop > 0)
                {
                    element.scrollTop = oldScrollTop;
                    document.getElementById('scrollStatus').innerHTML = 'scroll bar visible';

                    // increase element width
                    element.style.width = '310px';
                }
                else
                {
                    document.getElementById('scrollStatus').innerHTML = 'scroll bar not visible';

                    // restore element width
                    element.style.width = '300px';
                }
            }

            function add()
            {
                var element = document.getElementById('testElement');
                element.innerHTML = element.innerHTML + ' Stuff';
            }

            function remove()
            {
                var element = document.getElementById('testElement');
                element.innerHTML = element.innerHTML.substring(0, element.innerHTML.length - 6);
            }

            window.onload = function()
            {
                setInterval('verticalScrollBarExists("testElement")', 500);
            };
        </script>
        <style type="text/css">
            #testElement
            {
                width: 300px;
                height: 40px;
                background-color: blue;
                color: white;
                overflow: auto;
            }
        </style>
    </head>
    <body>
        <div id="testElement">Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff Stuff</div>
        <div id="scrollStatus">Uninitialised</div>
        <input type="button" onclick="add()" value="Add" />
        <input type="button" onclick="remove()" value="Remove" />
    </body>
</html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM