2015-05-14 149 views
0

最近我们从IE 9升级到IE 11.菜单栏被禁用,所以当我在企业模式下打开菜单栏开始工作,但子菜单与主菜单栏重叠。子菜单重叠IE主菜单11

子菜单代码

menubar.prototype=new menu(); 
menuitem.prototype.showsubmenu=function(bDelayed) 
{ 
    var sm=this.submenu(); 
    var pm=this.parentmenu(); 
    if(sm && !this.disabled) 
    { 
     pm._abouttoshowsubmenu=true; 
     var oThis=this; 
     sm._showTimer=window.setTimeout("eventListeners.menuItem.onshowtimer(\""+this.id+showtimeout)"); 
    } 
} 

menuitem.prototype.tohtml.funcyion() 
{ 
    var cssClass=this.getcssClass(); 
    var tooltips=this.gettooltips(); 
    return <tr> ("cssClass!= ""? "\cssClass :"") + 
      ("tooltips!= ""? "\tooltips:"") + 
      (!this.styles="" "display:none: "") + 
      ">"+ 
} 

Menuitem.prototype.positionSubmenu=function() 
{ 
    var dir=this.submenudirection;//its vertical 
    var e1=this._htmlelement; 
    var useInsets=this._useInsets; 
    var sm=this.submenu; 
    var oThis=this; 
    if(!sm._iscssfileloaded()) 
    { 
     window.setTimeout("eventListeners.menuItem.onpostionsubmenutimer(\""+this.id+showtimeout)"); 
     return; 
    } 
    var rect={ 
     left:posLib.getscreenleft(e1), 
     top:posLib.getscreenTop(e1), 
     width:e1.offsetwidth, 
     height:e1.offsetheight, 
    }; 
    var menurect={ 
     left:sm.getleft(), 
     top:sm.gettop(), 
     width:sm.getpreferredwidth(), 
     height:sm.getpreferredheight(), 
     insetleft:useinset?sm.getinsetleft():0, 
     insetright:useinset?sm.insetrightt():0, 
     insettop:useinset?sm.getinsettop():0, 
     insetbottom:useinset?sm.getinsetbottom():0 

     var scrollBefore=sm._scrollingMode; 
     sm.show(left,top,width,height); 
     if(sm._scrollingMode!=scrollBefore) 
     this.positionSubmenu(); 
    }; 
} 

menubar.prototype.getLeft=function() 
{ 
    return poslib.getscreenleft(this._htmlelement); 
} 

menubar.prototype.gettop=function() 
{ 
    return poslib.getscreenleft(this._htmlelement); 
} 

menubar.prototype.getinsetLeft=function() 
{ 
    return parseint(this._htmlelement.currentstyle.borderleftwidth); 
} 

menubar.prototype.getinsettop=function() 
{ 
    return parseint(this._htmlelement.currentstyle.bordertopwidth); 
} 

menubar.prototype.getinsetbottom=function() 
{ 
    return parseint(this._htmlelement.currentstyle.borderbottomwidth); 
} 

menubar.prototype.getinsetright=function() 
{ 
    return parseint(this._htmlelement.currentstyle.borderrightwidth); 
} 

如果有谁知道它或任何建议请回复?

+0

HTML应该遵循这种问题。 – hina10531

+0

'menuitem.prototype.tohtml.funcyion()'可能没有帮助 – DBS

+0

你并没有正确连接你的字符串。看看语法突出显示,看看在哪里。 –

回答

0

是的,你是正确的tohtml函数有一些问题。我改变了逻辑和它的工作正常。感谢您的建议