我正在画两个带有小mce的textareas,它们分为两个div,一个用于英语,一个用于法语。我根据英语/法语下拉显示/隐藏英语/法语div。
当我选择法语隐藏英语div并显示法语div时,法语小mce textarea的最小尺寸。当我拿走秀/隐藏时,textareas都画得很好。这看起来像一个小小的mce bug。无论如何要绕过这个?
这是代码:
$(function () {
$('textarea').tinymce({
script_url: '/js/tiny_mce/tiny_mce.js',
theme: "advanced"
});
$("#ddlLocales").change(function () {
$(".localizedInput").hide();
//english or french
$("." + $("#ddlLocales option:selected").text()).show();
});
//this is to trigger the change function on load.
$("#ddlLocales").change();
});
<div class="localizedInput english">
<textarea class = "eventInputTextArea"></textarea>
</div>
<div class="localizedInput French">
//this textarea's height and width get wiped out by tinymce only when implementing show/hide
<textarea class = "eventInputTextArea"></textarea>
<div>
//below is the css class that specifies the width and height of textarea
.eventInputTextArea{
width:600px;
height:400px;
}
答案 0 :(得分:0)
答案 1 :(得分:0)
解决方法:您可以在选择法语后更新高度/宽度以隐藏英语div。
对于高度设置,此代码可能看起来像
iframe_id = ed.id + '_ifr'; // ed is the editor instance
style = $('#' + iframe_id).attr('style');
style_arr = style.split(';'); // width is first [0]
style_mod = style_arr[0] + ';height:' + ed.getParam('height') + 'px;';
$('#' + iframe_id).attr('style', style_mod);
// set table height
iframe_tbl = ed.id + '_tbl';
style = $('#' + iframe_tbl).attr('style');
style_arr = style.split(';'); // width is first [0]
style_mod = style_arr[0] + ';height:"10px;';
$('#' + iframe_tbl).attr('style', style_mod);
答案 2 :(得分:0)
来自TinyMCE inside hidden div are not displayed as enabled when we put the div visible,用户的slolife回答帮助了我:
在取消隐藏包含div后,尝试调用tinyMCE.init(...)。