gpt4 book ai didi

javascript - 为什么这个 jQuery 代码会导致 IE8 错误 : "UNEXPECTED CALL TO METHOD OR PROPERTY ACCESS"

转载 作者:行者123 更新时间:2023-12-03 12:01:47 24 4
gpt4 key购买 nike

编辑:我正在使用 jQuery 1.8.3。

在下面的代码中,某些内容失败并导致 IE8 中出现 JavaScript 错误,并显示消息“意外调用方法或属性访问”。由于是在 IE8 中,因此很难准确定位问题发生的位置。

你们能帮我找出问题所在吗?这里运行的 jQuery 函数是否会导致此类错误?

clsLanguage.prototype.refreshTranslation = function () {

"use strict";

if (!this.disableliveupdate) {
$('body').unbind('contentchange');
}

// if translation file was found look for elements to translate
var tmp_cls = this;
$('[data-language]').each(function () {
// html element to do the translation on
var html_element = $(this);
// look for the elements language in the current language file
if (tmp_cls.language_strings[html_element.attr('data-language')]) {

$.each(tmp_cls.language_strings[html_element.attr('data-language')], function (key, value) {
if (key === 'innerHTML') {
html_element.html(value);
} else if (key !== 'description') { //we skip description key, is just used as comment of the value
html_element.attr(key,value);
}
});

} else {
html_element.html(html_element.attr('data-language'));
}

});
if (!this.disableliveupdate) {
$('body').bind('contentchange', function () {
//console.log('contentchange triggered');
tmp_cls.refreshTranslation();
});
}

};

最佳答案

如果没有比错误消息更具体的信息,这个问题很难回答,所以请尝试将其缩小一点。根据给出的信息:

  1. 它可能是对 .html() 的调用之一:

    ...
    html_element.html(value);
    ...
    html_element.html(html_element.attr('data-language'));

    .html() internally使用.innerHtml。发生错误的原因可能是 html_element 是一个无法调用该元素的元素(请参阅 corresponding MSDN article ),例如:

    • 没有结束标记的元素(input)
    • innerHtml 为只读的元素 (tr)
  2. 如果相关页面包含 HTML5-onlycustom也可能是原因的因素。

关于javascript - 为什么这个 jQuery 代码会导致 IE8 错误 : "UNEXPECTED CALL TO METHOD OR PROPERTY ACCESS",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25382999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com