1

我在我的项目中使用附带 Textarea 的 tinymce。它工作得很好。但是当文本区域在框架集内时,它不起作用。这是框架集中 textarea 的小代码片段。只要我删除框架集,它就可以工作(只需从下面的代码片段中删除框架集标签,它就可以工作)。我没有得到我在这里缺少的东西

<html>
<head>
     <script type="text/javascript" src="script/jquery-1.7.1.js"></script>
     <SCRIPT type="text/javascript" src="script/jquery-ui-1.8.13.custom.min.js"></SCRIPT>
     <script type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce.js" ></script>
     <SCRIPT type="text/javascript">
     $(function() {
     appendTinyMCE();
    function appendTinyMCE(){
     tinyMCE.init({
        mode : "textareas",
        theme : "advanced",
        plugins : "advlist",
         theme_advanced_buttons1 : "forecolor,backcolor,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect,sub,sup,|,bold,italic,underline,strikethrough",
        theme_advanced_buttons2 : "",
        theme_advanced_buttons3 : "",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : true

});}


});
</script>
</head>
<frameset framespacing="0" border="1" frameborder="1" cols="50%,50%">
<frame scrolling="NO"  name="checkPanel">
</frame>
<frameset rows="18%,*">
<frame scrolling="NO" noresize="" src="about:blank" name="heading">
<frame id="spellBody" scrolling="NO" noresize="" src="about:blank" name="preview" style="display: none;" aria-hidden="true">
<html>
<body>
<textarea style="width: 100%;" name="bodyTest" rows="20"><font face="Arial, Helvetica, sans-serif" size=2><p>This is my Test Text</p><BR> <p> </p><BR> <p><strong>Thanks and Regards</strong></p><BR> <p><font color=blue><strong>Scott</strong></font> Miles</p></textarea>
</body>
</html>
</frame>
</frameset>
</frameset>
</html>

我不确定是否需要做一些额外的配置才能使 tinymce 与 Frameset 一起使用?如果我可以将tinymce与frame而不是textArea绑定,我也很好,如果可能的话?

4

1 回答 1

2

最快的解决方案是将所有 javascript 移动到 Frameset HTML 的头部。tinyMCE.init()将适用于当前文档中的所有文本区域,但 Frameset(或 iframe)的内容被视为不同的文档,或者至少具有不同的document对象。

于 2012-12-26T13:57:43.933 回答