出于某种原因,我无法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%
窗口的宽度。但从to之后,window.resize
' s 的宽度仍然是。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";
}