Javascript 在opera中尝试更改html标记中的innerHTML时,她将我放在html页面的顶部
我写轻wyswig(iframe)。我有一个函数,它在事件键控时计算iframe中的长度,并在框中更改(对于左边的字符)符号数。但在Opera9.24中,当我更改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 =
//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现在已经很老了,应该没有太多用户。您需要在这个过时的版本上进行测试有什么具体原因吗