2012-04-17 4 views
15

SVG 그래픽이 표시된 그래픽 페이지가 있습니다. 나는 Raphael 그래픽 프레임 워크를 사용하고 있습니다. 페이지가 Firefox에서 제대로 표시됩니다. F12 개발자 도구가 IE9에서 '켜기'로 설정되어 있으면 잘 작동합니다. 지도는 F12 개발자 모드가 해제되고 브라우저 캐시가 지워져 (일반 사용자를 시뮬레이트하는 경우) 응용 프로그램이 시작되면 IE9에서 부분 데이터 (노드 링크 다이어그램이고 노드 노드 중 하나만 표시)를 보여줍니다.IE9에서 콘솔이 정의되지 않았습니다.

업데이트 : 디버거를 계속 유지하고 "콘솔이 정의되지 않았습니다."오류를 표시합니다. 그래서 나는 그래픽 렌더링 문제가 아니라 콘솔을 명시 적으로 사용하지 않을 것이라고 생각합니다. 아마도 mindmap js가 내부적으로 이것을 사용하고있을 것이지만이 문제를 다시 없애는 방법은 있을까요?

업데이트 : 문제점을 발견하고 js 파일의 console.log 항목을 주석 처리했습니다.

감사합니다.

답변

39

아마 코드 또는 코드가 console.log 또는 이와 비슷한 것을 사용하고 있습니다.

이 코드를 전역 범위에 추가하여 IE (또는이를 지원하지 않는 브라우저)에 대한 더미 래퍼를 만들 수 있습니다. 당신이 다른 어떤 라이브러리를 호출하기 전에 그냥 어딘가에 다음 코드를 넣어 :

if(!(window.console && console.log)) { 
    console = { 
    log: function(){}, 
    debug: function(){}, 
    info: function(){}, 
    warn: function(){}, 
    error: function(){} 
    }; 
} 
2

코드에 console.log() 또는 console.error() 호출이 있습니까?

+0

아마도 콘솔 오류가 표시되고, 어디에서 호출되는지 알 수 있습니다. –

8

문제 (당신의 JS 코드는 'CONSOLE.LOG'예를 들어, 언젠가 콘솔 메소드를 호출하지만, 브라우저 콘솔을하지 않는다는 것입니다 또는 그것을 닫았다);

이 문제를 해결하려면, 스크립트 중 하나를 포함하기 전에이 (한 번) 추가 : 존재하지 않는 경우에만 '콘솔이 정의되지 않은'때문에

//Ensures there will be no 'console is undefined' errors 
window.console = window.console || (function(){ 
    var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){}; 
    return c; 
})(); 

이하는 '의사'콘솔을 만듭니다 오류가 사라집니다.

희망이 도움이됩니다. 건배

관련 문제