强制Javascript编码与除指定元素之外的每个LI解除关联

强制Javascript编码与除指定元素之外的每个LI解除关联,javascript,Javascript,如何修改下面的代码,使其不捕获除指定元素中的LI之外的所有LI?原因是我在另一个页面上有一个单独的水平下拉菜单,当下面的代码应用于该页面时,我的右键单击菜单类似于我的下拉菜单。如何使其仅应用于指定的元素:document.getElementById('Menu') var MenuObj; var activeMenuItem=false; //突出显示菜单项的函数 函数highlightMenuItem(){ this.className='MenuHighlighted'; } 函数de

如何修改下面的代码,使其不捕获除指定元素中的LI之外的所有LI?原因是我在另一个页面上有一个单独的水平下拉菜单,当下面的代码应用于该页面时,我的右键单击菜单类似于我的下拉菜单。如何使其仅应用于指定的元素:
document.getElementById('Menu')


var MenuObj;
var activeMenuItem=false;
//突出显示菜单项的函数
函数highlightMenuItem(){
this.className='MenuHighlighted';
}
函数deHighlightMenuItem(){
this.className='';
}
//单击菜单项时显示菜单的功能
功能显示菜单(e){
var myMouseX=(e | | event).clientX;
var myMouseY=(e | | event).clientY;
MenuObj.style.left=myMouseX+'px';
MenuObj.style.top=myMouseY+'px';
MenuObj.style.display='block';
返回false;
}
//单击菜单项时隐藏菜单的功能
函数hideMenu(e){
if(document.all)e=事件;
如果(e.button==0){
MenuObj.style.display='none';
}
}
函数initMenu(){
MenuObj=document.getElementById('Menu');
MenuObj.style.display='block';
var menuItems=MenuObj.getElementsByTagName('LI');
对于(var no=0;no
  • 高度:5px;“> initMenu(); MenuObj.style.display='none'; document.getElementById('refdocs_list')。oncontextmenu=showMenu; document.getElementById('refdocs_list')。onclick=hideMenu; document.documentElement.onclick=hideMenu;
    我的菜单和我的右键菜单使用了相同的div name#菜单

    改变了,瞧,它又开始工作了

    <!DOCTYPE html>
    
    <head>
        <script language="javascript" type="text/javascript">
            var MenuObj;
            var activeMenuItem = false;
    
            //Function to highlight menu item
            function highlightMenuItem() {
                this.className = 'MenuHighlighted';
            }
    
            function deHighlightMenuItem() {
                this.className = '';
            }
    
            //Function to show menu on click of menu item
            function showMenu(e) {
                var myMouseX = (e || event).clientX;
                var myMouseY = (e || event).clientY;
                MenuObj.style.left = myMouseX + 'px';
                MenuObj.style.top = myMouseY + 'px';
                MenuObj.style.display = 'block';
                return false;
            }
    
            //Function to hide menu on click of menu item
            function hideMenu(e) {
                if (document.all) e = event;
                if (e.button == 0) {
                    MenuObj.style.display = 'none';
                }
            }
    
            function initMenu() {
                MenuObj = document.getElementById('Menu');
                MenuObj.style.display = 'block';
                var menuItems = MenuObj.getElementsByTagName('LI');
                for (var no = 0; no < menuItems.length; no++) {
                    menuItems[no].onmouseover = highlightMenuItem;
                    menuItems[no].onmouseout = deHighlightMenuItem;
    
                    var aTag = menuItems[no].getElementsByTagName('A')[0];
                    aTag.style.paddingLeft = '5px';
                    aTag.style.width = (aTag.offsetWidth) + 'px';
                    aTag.onclick = hideMenu;
                }
                MenuObj.style.display = 'none';
            }
    
    
        </script>
        <style type="text/css">
            #Menu
            {
                /* The menu container */
                border: 1px solid #808080;
                background-color: #EDEDED;
                margin: 0px;
                padding: 0px;
                width: 120px; /* Width of context menu */
                font-family: Trebuchet MS;
                font-size: 8pt;
                background-repeat: repeat-y; /* Never change these two values */
                display: none;
                position: absolute;
            }
            #Menu a
            {
                /* Links in the context menu */
                color: #252525;
                text-decoration: none;
                line-height: 20px;
                vertical-align: middle;
                height: 20px; /* Don't change these 3 values */
                display: block;
                width: 100%;
            }
            #Menu li
            {
                /* Each menu item */
                list-style-type: none;
                padding: 1px;
                margin: 1px;
                cursor: pointer;
            }
            #Menu li div
            {
                /* Dynamically created divs */
                cursor: pointer;
            }
            #Menu .MenuHighlighted
            {
                background-color: #C4D0D4;
            }
    
        </style>
    </head>
    <body>
    <select style="width: 250px;" id="refdocs_list">
      <option value="volvo">Volvo</option>
      <option value="saab">Saab</option>
      <option value="mercedes">Mercedes</option>
      <option value="audi">Audi</option>
    </select>
    
        <div>
    
                        <ul id="Menu">
                            <li><a href="#nogo">Delete document</a></li>
                            <div style="height:1px; background: #808080;"></div>
                            <li style="height: 5px;"><a href="#nogo">Clear all</a></li>
                        </ul>
    
            <script type="text/javascript">
                initMenu();
                MenuObj.style.display = 'none';
                document.getElementById('refdocs_list').oncontextmenu = showMenu;
                document.getElementById('refdocs_list').onclick = hideMenu;
                document.documentElement.onclick = hideMenu;
            </script>
        </div>
    </body>
    </html>