出于某种原因,我无法让RadEditor
在window.resize
上调整自己的大小。我的javascript函数getsCalled但似乎没有任何东西可以修改RadEditor
的外观。
首先,我认为它会自行调整大小但不是......只有在从服务器更新内容后才会调整大小。
这是我的RadEditor
:
<telerik:RadEditor ID="RadEditor1" Runat="server"
OnClientLoad="OnRadEditorClientLoad"
OnClientCommandExecuting="OnClientCommandExecuting"
EnableResize="true" ContentAreaMode="Div"
AutoResizeHeight="true"
Height="20px"
Width="100%"
EditModes="Design"
Skin="Web20">
</telerik:RadEditor>
这是我的javascript函数:
window.onresize = ResizeControls;
function ResizeControls() {
var editor = $find("<%=RadEditor1.ClientID %>");
editor.get_element().style.width = getDocWidth() + "px";
editor.get_contentArea().style.width = getDocWidth() + "px";
}
getDocWidth()
返回正确修改的宽度。 (是的,“px”必须在那里)。如果我检查编辑器的宽度,它已被正确修改...我需要刷新或重新绘制控件。
因此,在首次加载时,我的RadEditor
占据了窗口宽度的100%
。但是,window.resize
从1000px
到800px
之后,RadEditor
的宽度仍为1000px
。
明确解决方案:移除Width=100%
并调整width
事件中的OnClientLoad
:
<telerik:RadEditor ID="RadEditor1" Runat="server"
OnClientLoad="OnRadEditorClientLoad"
OnClientCommandExecuting="OnClientCommandExecuting"
EnableResize="true" ContentAreaMode="Div"
AutoResizeHeight="true"
Height="20px"
EditModes="Design"
Skin="Web20">
</telerik:RadEditor>
function OnRadEditorClientLoad(editor, args) {
editor.get_element().style.width = getDocWidth()= + "px";
}
window.onresize = AsjustRadEditorsWidth;
function AsjustRadEditorsWidth() {
var editor = $find("<%=EnonceContainer.ClientID %>");
editor.get_element().style.width = getDocWidth() + "px";
}
答案 0 :(得分:1)
RadControls for ASP.NET AJAX Documentation RadEditor setSize
除了setSize方法调用之外,尝试重置编辑器div元素的min-width和min-height css属性:
$telerik.$($find("<%=RadEditor1.ClientID %>")).css({"min-width": "", "min-height": ""});