jHTMLarea - 选择文本在IE9中不起作用

时间:2012-11-17 19:17:11

标签: jquery internet-explorer-9 jhtmlarea

jHTMLarea适用于所有浏览器,但在IE9中,如果文本框需要滚动条,初始窗口下方的任何内容都不会在用户突出显示时突出显示。

以下代码是我用来调用插件的代码。

       $(function() {
            $("#aboutTextEdit").htmlarea({
            toolbar: ["bold", "italic", "unorderedList", "|", "link", "unlink" ], 
                loaded: function(event) {               
                }
            });
        });

2 个答案:

答案 0 :(得分:1)

我对jHTMLarea 0.7.5有同样的问题。 这个问题也存在于其他WYSIWYG编辑器中。

要修复此问题,您必须编辑jhtmlarea.js文件。 搜索:

  

的designMode =上

然后删除此术语并插入

  

edit.body.contentEditable = true;

..在函数结束时。 确保在设置inital-document之后设置contentEditable如下:

[..]

initEditor:function(options)
{
    var edit=this.editor=this.iframe[0].contentWindow.document;
    edit.open();
    edit.write(this.textarea.val());
    edit.close();
    if(options.css)
    {
        var e=edit.createElement('link');
        e.rel='stylesheet';
        e.type='text/css';
        e.href=options.css;
        edit.getElementsByTagName('head')[0].appendChild(e);

    [..] 
    edit.body.contentEditable = true;

[..]

它似乎也是在Firefox上运行的解决方案,因此您无需进行浏览器切换。看一下你将“contentEditable”设置为像“body”或“div”这样的HTML元素,而不是直接设置为“document”--Object。

答案 1 :(得分:0)

想出来!!感谢Warren Bullock

使用此stackOverflow问题(一旦我发现它是iframe问题):Unable to select the text left in the Iframe beyond the visible area

kicker进入jHTMLArea文件并注释掉这一行: edit.designMode ='on';

在第308行。现在在所有浏览器中都很棒!