2014-06-28 124 views
0

我使用TinyMCE的與我自己的文件瀏覽器標題:更改動態生成的對話框

file_browser_callback: function(field_name, url, type, win) 
{ 
    tinyMCE.activeEditor.windowManager.open({ 
    title: 'My Title', 
    url : 'file_browser.html', 
} 

我要動態地更改標題,使用JavaScript對話框的「我的標題」從file_browser內.html iframe。

由TinyMCE的生成的HTML代碼看起來是這樣的:

<div id="mceu_76-head" class="mce-window-head"><div id="mceu_76-title" class="mce-title">My title</div></div> 

<div id="mceu_76-body" class="mce-container-body mce-abs-layout"><iframe src="file_browser.html" tabindex="-1"> 

很明顯,我不能使用getElementById("mceu_76-head"),因爲這是動態生成的,並有其他的對話框,其標題,我不希望改變。我該怎麼辦?

回答

1

windowManager.open返回包含該ID的窗口設置。

var win = tinyMCE.activeEditor.windowManager.open({ 
    title: 'My Title', 
    url : 'file_browser.html', 
    ... 
}); 

document.getElementById(win._id + '-title').innerHTML = 'New Title'; 

它的工作原理,但我不知道這是正確的方式。

+0

根據open()返回的文檔void:http://www.tinymce.com/wiki.php/api4:method.tinymce.WindowManager.open – Baz

+0

儘管文檔中說過,它實際上返回窗口設置對象in V4。您可以在4.x dev軟件包的WindowManager.js中找到相關的代碼。 – taggon