Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在opera中尝试更改html标记中的innerHTML时,她将我放在html页面的顶部_Javascript_Opera - Fatal编程技术网

Javascript 在opera中尝试更改html标记中的innerHTML时,她将我放在html页面的顶部

Javascript 在opera中尝试更改html标记中的innerHTML时,她将我放在html页面的顶部,javascript,opera,Javascript,Opera,我写轻wyswig(iframe)。我有一个函数,它在事件键控时计算iframe中的长度,并在框中更改(对于左边的字符)符号数。但在Opera9.24中,当我更改innerHTML框浏览器时,会将我放在html页面的顶部 //this.doc - iframe document $(this.doc).keydown(function(e) { if (e.ctrlKey || e.metaKey) isCtrl =

我写轻wyswig(iframe)。我有一个函数,它在事件键控时计算iframe中的长度,并在框中更改(对于左边的字符)符号数。但在Opera9.24中,当我更改innerHTML框浏览器时,会将我放在html页面的顶部

//this.doc - iframe document
            $(this.doc).keydown(function(e)
            {
                if (e.ctrlKey || e.metaKey) isCtrl = true;

                if (e.keyCode == 9) { this.execCommand('indent', false); return false; }
                if (e.keyCode == 66 && isCtrl) { this.execCommand('bold', 'bold'); return false; }`enter code here`
                if (e.keyCode == 73 && isCtrl) { this.execCommand('italic', 'italic'); return false; }                              
            }.bind2(this)).keyup(function(e)
            {                                   
                isCtrl = false;     

                if (e.keyCode == 13)
                {                   
                    return true;
                }                                                           
                if(this.opts.maxlength)
                    this.checkLength();                             
                if(this.opts.autoSync)
                    this.syncCode();                                            
            }.bind2(this));


        checkLength: function() {
            var html = this.getHtml();

            if (html.length >= this.opts.maxlength) {
                html = html.substr(0, this.opts.maxlength );                
                this.setHtml(html);             
                alert('Комментарий должен содержать до ' + this.opts.maxlength);
            } else {                                
                var number = this.opts.maxlength - html.length;
//li_counter - box for characters left
                    this.li_counter.html("Осталось символов: " + number);               
            }
    // bind2
    Function.prototype.bind2 = function(object)
    {
        var method = this; var oldArguments = $.makeArray(arguments).slice(1);
        return function (argument)
        {
            if (argument == new Object) { method = null; oldArguments = null; }
            else if (method == null) throw "Attempt to invoke destructed method reference.";
            else { var newArguments = $.makeArray(arguments); return method.apply(object, oldArguments.concat(newArguments)); }
        };
    };  

        },      

您确定this.doc是IFRAME文档而不是父文档吗?这个.doc设置在哪里

顺便说一句,Opera9.24现在已经很老了,应该没有太多用户。您需要在这个过时的版本上进行测试有什么具体原因吗