2016-07-28 2 views
0

내 페이지에서 tinymce의 두 인스턴스를 초기화하는 방법을 알 수 없습니다.여러 인스턴스를 초기화하는 중

답변을 this question에서 시도했지만 행운은 없습니다. 두 번째 (co)를 초기화하기 전에 첫 번째 (io)를 초기화하는 데 시간이 걸리면 시간 제한을 사용해야합니까?

var io = { 
    selector:"#auth_info_intro textarea", 
    ..., 
    setup:function(ed){ 
     ed.on("init",function(e){ 
     tinyMCE.activeEditor.setContent(obj.INFO.INTRO.TEXT); 
     });   
    } 
}; 
var co = { 
    selector:"#auth_info_conclude textarea", 
    ..., 
    setup:function(ed){ 
     ed.on("init",function(e){ 
     tinyMCE.activeEditor.setContent(obj.INFO.CONCLUDE.TEXT); 
     });   
    } 
}; 
tinymce.init(io); 
tinymce.init(co); 

위의 값은 Uncaught TypeError: Cannot read property 'body' of undefined입니다. 내가 무엇이 누락 되었습니까?

답변

0

분명히, 그것은 첫 번째 인스턴스를 초기화하는 데 시간이 어느 정도 소요됩니다, 그래서 대신 즉시 두 번째 인스턴스를 초기화 시도의 첫 번째 인스턴스의 초기화 객체의 설정 매개 변수 내에서 제한 시간을 설정합니다. 작동 방식 :

var io = {}; 
io.selector = "textarea[name=intro]"; 
io.setup = function(ed){ 
    ed.on("init",function(e){ 
      tinyMCE.activeEditor.setContent(obj.INFO.INTRO.TEXT);    
      setTimeout(function(){ 
       var co = {}; 
       co.selector = "textarea[name=conclude]"; 
       co.setup = function(ed){ 
        ed.on("init",function(e){tinyMCE.activeEditor.setContent(obj.INFO.CONCLUDE.TEXT);});       
       } 
       tinymce.init(co); 
      },1000);    
    }); 
tinymce.init(io); 
1

누락 된 개체를 가리키고 있기 때문일 수 있습니다. (알버트 이스라엘에 댓글을 추가하는 것만으로는 충분하지 평판) textarea#auth_info_conclude

0

에, textarea#auth_info_intro#auth_info_conclude textarea에 선택기를 #auth_info_intro textarea 변경하려고합니다. 코드는 선택자를 수정 한 후에 작동합니다. 다음은 jsFiddle입니다.

<textarea id="auth_info_intro"></textarea> 
<textarea id="auth_info_conclude"></textarea> 

<script> 
var obj = { 
    INFO: { 
    INTRO: { 
     TEXT: "Hello World!" 
    }, 
    CONCLUDE: { 
     TEXT: "Goodbye World!" 
    } 
    } 
}; 
var io = { 
    selector:"textarea#auth_info_intro", 
    setup:function(ed){ 
     ed.on("init",function(e){ 
     tinyMCE.activeEditor.setContent(obj.INFO.INTRO.TEXT); 
     });   
    } 
}; 
var co = { 
    selector:"textarea#auth_info_conclude", 
    setup:function(ed){ 
     ed.on("init",function(e){ 
     tinyMCE.activeEditor.setContent(obj.INFO.CONCLUDE.TEXT); 
     });   
    } 
}; 
tinymce.init(io); 
tinymce.init(co); 
</script> 
관련 문제