2014-03-12 3 views
1

다음과 같은 문제가 있습니다. 탭을 변경 한 후에 내 브라우저 (Chrome)가 응답하지 않습니다. fiddle here을 참조하십시오. 다른 브라우저에서 테스트하지 않았으므로 Chrome을 작동시킬 대상으로 삼기 때문에 할 필요가 없습니다.에이스 편집기 + jQueryUI 탭에서 브라우저를 죽입니다.

제 목표는 편집기를 첫 번째 탭이 아닌 두 번째 탭에 놓는 것입니다.

HTML :

<div id="tabs"> 
    <ul> 
    <li><a href="#tab1">Tab without</a></li> 
    <li><a href="#tab2">Tab with</a></li> 
    </ul> 
    <div id="tab1"> 

    </div> 
    <div id="tab2"> 
    <textarea id="ta"></textarea> 
    </div> 
<div> 

자바 스크립트 : 그건 내가 사용하는 코드입니다 그것은이 행에 실패

$(function(){ 
    $("#tabs").tabs({ 
    activate: function(event,ui){ 
     if (ui.newPanel.attr("id") == "tab2") { 
     setTimeout(function(){ 
      var editor = ace.edit("ta"); 
      editor.setTheme("ace/theme/twilight"); 
      editor.session.setMode("ace/mode/xml"); 
     },10); 
     } 
    } 
    }); 
}); 

: 나는에 탭을 전환 한 후에 var editor = ace.edit("ta");

두 번째로, 브라우저는 "고정"되어 1 분 안에 RAM을 최대로 채 웁니다. 2.5GB이고 아무 것도 렌더링되지 않습니다. 그렇다면 운영 체제조차도 프로세스가 중단 될 때까지는 매우 느립니다.

제 구현에서는이 실행을 첫 번째 실행에서만 수행합니다. 여기서는 코드를 단순화하기 위해 이것을 제외했습니다.

도움 주셔서 감사합니다.

+1

에이스 사이트에서 div를 사용하려고해도 div를 사용하는 것을 볼 수 있습니다. – Sergey92zp

+0

@ Sergey92zp, 감사합니다! 그것은 문제를 해결했습니다. 제발, 대답으로하고 받아 들일 것입니다. – smnbbrv

답변

0

예, 나는이 같은 문제로 실행 사용할 것을 볼 수도 에이스 사이트에서 대신 textearea의 사업부를 사용합니다. textarea에 Ace를 사용하여 발생하는 것으로 보입니다. 다음과 같은 다소 실감 나는 스레드를보십시오 :

관련 문제