[Web]最簡單的方法實現工具條菜單上的彈出式菜單




顯示效果如下:



實現代碼如下:PopupMenu.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    
<title>工具條上的彈出式菜單</title>
    
<style type="text/css">
a:link
{
    color
: #000;
    text-decoration
: none;
    font-weight
: normal;
    padding
: 0px 0px 2px 0px;
    font-size
: 12px;
    display
: block;
}

a:visited
{
    color
: #000;
    text-decoration
: none;
    font-weight
: normal;
    padding
: 2px 0px 0px 0px;
    font-size
: 12px;
    display
: block;
}

a:hover
{
        color
: #000;
        text-decoration
: none;
        padding
: 0px 0px 2px 0px;
        font-size
: 12px;
        display
: block;
}

a:active
{
    color
: #000;
    text-decoration
: none;
    padding
: 2px 0px 0px 0px;
    font-size
: 12px;
    display
: block;
    display
: block;
}


.MenuItem
{
    display
:block;
    width
:60px;
    height
:20px;
    font-size
: 12px;
    float
:left;
    text-align
:center;
    padding
:2px 0px 0px 0px;
}

        
</style>

    
<script type="text/javascript">

    
var popup = window.createPopup();
    
var width;
    
var height;
    
    
function Pop_menu(divMenuList,width,height,toolbarMenuItem)
    
{
        popup.document.body.innerHTML 
= divMenuList.innerHTML;
        
        popup.show(
0,24,width,height,toolbarMenuItem);  
        
        
// 0 和 23 是相對於toolbarMenuItem元素左上角的座標點(x,y)
        // width 顯示菜單的寬度
        // height 顯示菜單的高度
        // toolbarMenuItem 要彈出菜單的對象
    }


    
</script>

</head>
<body>


    
<!--菜單條-->
    
<div id="toolbar_menu" style="width: 100%; height: 20px; background-color: #ece9d8;
        border: darkgray 1px solid;"
>
        
<!--菜單元素-->
        
<div id="MenuItem1" class="MenuItem">
            
<href="#" onfocus="Pop_menu(filMenuList,120,125,MenuItem1)" accesskey="F">文件(<u>F</u>)</a></div>
        
<div id="MenuItem2" class="MenuItem">
            
<href="#" onfocus="Pop_menu(filMenuList,120,125,MenuItem2)" accesskey="E">編輯(<u>E</u>)</a></div>
        
<div id="MenuItem3" class="MenuItem">
            
<href="#" onfocus="Pop_menu(filMenuList,120,125,MenuItem3)" accesskey="V">視圖(<u>V</u>)</a></div>
        
<div id="MenuItem4" class="MenuItem">
            
<href="#" onfocus="Pop_menu(filMenuList,120,125,MenuItem4)" accesskey="S">網站(<u>S</u>)</a></div>
        
<div style="clear: both;">
        
</div>
    
</div>
    
    
    
    
<!--文件菜單-->
    
<div id="filMenuList" style="display: none;">
        
<!--菜單列表元素-->
        
<div style=" width: 120px; height:auto; background-color: #eee; border: darkgray 1px solid;">
        
            
<div onmousemove="this.style.color='white'; this.style.background='#4169e1';" onmouseout="this.style.color='black';this.style.background='#eee'">
                
<span onclick="parent.location.href='http://blog.csdn.net/qghboy'" style="cursor: hand; height:20px;font-size:12px; padding:5px;">我的CSDN博客</span>
            
</div>
            
<div onmousemove="this.style.color='white'; this.style.background='#4169e1';" onmouseout="this.style.color='black';this.style.background='#eee'">
                
<span onclick="parent.location.href='http://blog.csdn.net/qghboy'" style="cursor: hand; height:20px;font-size:12px; padding:5px;">我的CSDN博客</span>
            
</div>
            
<div onmousemove="this.style.color='white'; this.style.background='#4169e1';" onmouseout="this.style.color='black';this.style.background='#eee'">
                
<span onclick="parent.location.href='http://blog.csdn.net/qghboy'" style="cursor: hand; height:20px;font-size:12px; padding:5px;">我的CSDN博客</span>
            
</div>
            
<div onmousemove="this.style.color='white'; this.style.background='#4169e1';" onmouseout="this.style.color='black';this.style.background='#eee'">
                
<span onclick="parent.location.href='http://blog.csdn.net/qghboy'" style="cursor: hand; height:20px;font-size:12px; padding:5px;">我的CSDN博客</span>
            
</div>
            
<div onmousemove="this.style.color='white'; this.style.background='#4169e1';" onmouseout="this.style.color='black';this.style.background='#eee'">
                
<span onclick="parent.location.href='http://blog.csdn.net/qghboy'" style="cursor: hand; height:20px;font-size:12px; padding:5px;">我的CSDN博客</span>
            
</div>
            
        
</div>
    
</div>
</body>
</html>



提示:最爲重要的就是

<script type="text/javascript">

 var popup = window.createPopup();
 var width;
 var height;
 
 function Pop_menu(divMenuList,width,height,toolbarMenuItem)
 {
  popup.document.body.innerHTML = divMenuList.innerHTML;
  
  popup.show(0,24,width,height,toolbarMenuItem); 
  
  // 0 和 23 是相對於toolbarMenuItem元素左上角的座標點(x,y)
  // width 顯示菜單的寬度
  // height 顯示菜單的高度
  // toolbarMenuItem 要彈出菜單的對象
 }

    </script>
++++++++++++++++++++++++++++++++++

還有就是:通過 window.createPopup().show () 彈出來的菜單實際上脫離了父頁面,所以父頁面上的樣式表對 彈出來的菜單界面是不起作用的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章