2013-12-10 2 views
0

내 사이트 메뉴가 IE 11에서 작동하지 않습니다. 아직 배우고 있지만이 문제를 해결하는 데 도움이 필요합니다. 문제가 무엇인지 게시하고 있습니다. 나는 primary_nav를 이해하지 못한다. 이것은 나보다 먼저 사람에 의해 지어졌다. 나는이 (getElementsByClassName)이 IE 8 이후 더 이상 좋지 않지만 지금은 일하고있다.JavaScript IE 11

Navigation.prototype = { 
initialize : function() { 
    this.bound_show_menu = this.show_menu.bindAsEventListener(this); 
    this.bound_hide_menu = this.hide_menu.bindAsEventListener(this); 

    var drop_menus = document.getElementsByClassName('primary_nav')[0].getElementsByClassName('drop'); 

    for (i=0; i<drop_menus.length; i++) { 
     Element.extend(drop_menus[i]); 
     Event.observe(drop_menus[i], 'mouseover', this.show_menu); 
     Event.observe(drop_menus[i], 'mouseout', this.hide_menu); 
    } 
}, 

show_menu : function (event) { 

    var elt = Event.element(event); 
    if (elt.hasClassName('drop')) { 
     elt.addClassName('over'); 
    } else { 
     elt.up('.drop').addClassName('over'); 
    } 

}, 

hide_menu : function (event) { 

    var elt = Event.element(event); 
    if (elt.hasClassName('drop')) { 
     elt.removeClassName('over'); 
    } else { 
     elt.up('.drop').removeClassName('over'); 
    } 
} 

}

+1

IE9 이상의 최신 브라우저에서는 .getElementsByClassName()이 정상적으로 작동해야합니다. IE8 이하에서는 지원하지 않습니다. IE11의 개발자 콘솔에 오류가 표시됩니까? (예 : Prototype 또는 jQuery와 같은) 의존성이 있습니까? JSFiddle 또는 유사하게 문제를 설명 할 수 있습니까? –

+0

예 primary_nav 행에 도달하는 F12 메뉴에서 오류가 발생합니다. "정의되지 않은 null 참조의 'getElementsByClass Name'속성을 가져올 수 없습니다."라고 생각하지는 않습니다. 문제는 jprofleetproducts.com에서 IE 11에서 메뉴가 드롭 다운되지 않습니다.이 JSFiddle을 사용해 보겠습니다. – user2091722

+0

다른 브라우저에서도 오류가 발생합니다. document.getElementsByClassName ('primary_nav')'는 class = "primary_nav"'가없는 문서가 없기 때문에 아무 것도 반환하지 않습니다. 'accordion.pack.js'에도 오류가 있습니다. 또한 [Prototype 1.6.0] (http://prototypejs.org/)에 의존하고 있습니다. –

답변

1

이것은 TransMenus 스크립트 버전에서 오래된 브라우저 감지 코드에 문제가 나타납니다.

실제로 Aaron Boodman이 몇 년 전이 문제를 해결 한 것으로 보입니다. https://github.com/aboodman/transmenus/에서 CSS와 JS의 최신 버전을 가져와 잘 보내야합니다.

0

IE 11에서 javascript가 전혀 작동하지 않는 것으로 나타났습니다. 조사한 결과 http://support.microsoft.com/kb/2836939에 대한 패치가 있다는 것을 발견했습니다. Server 2003 SP2, IIS6을 실행하고 있습니다. IIS 나 ASP가 Javascript를 지원하는 브라우저로 IE11을 인식하지 못하는 것 같습니다. 패치는 나를 위해 일했습니다.

이제 ReportViewer가 IE11에서 작동하지 않지만 다른 문제가 있습니다.