gpt4 book ai didi

javascript - Angular 无法在 IE8 文档模式 7 下工作

转载 作者:行者123 更新时间:2023-12-02 17:32:16 28 4
gpt4 key购买 nike

Angular 在 IE7 文档模式 7 上运行良好。它在 IE8 文档模式 8 上也运行良好,但在 IE8 文档模式 7 上不起作用。这是错误:

{
description: "Member not found.
",
message: "Member not found.
",
name: "Error",
number: -2147352573
}

这是抛出错误的行:

this.$$element.attr(attrName, value);
Member not found

我正在使用 Angular 1.2.9。我该如何修复它?

最佳答案

我已经找到解决办法了。只需检查是否 (msie && msie <= 8) 并且它在 IE7 中也可以工作。我还更改了 jqLit​​eRemoveClass 和 jqLit​​eAddClass

function jqLiteRemoveClass(element, cssClasses) {
if (msie && msie <= 8) {
if (cssClasses) {
forEach(cssClasses.split(' '), function(cssClass) {
element.className = trim(
(" " + element.className + " ")
.replace(/[\n\t]/g, " ")
.replace(" " + trim(cssClass) + " ", " ")
);
});
}
} else {
if (cssClasses && element.setAttribute) {
forEach(cssClasses.split(' '), function(cssClass) {
element.setAttribute('class', trim(
(" " + (element.getAttribute('class') || '') + " ")
.replace(/[\n\t]/g, " ")
.replace(" " + trim(cssClass) + " ", " "))
);
});
}
}
}

function jqLiteAddClass(element, cssClasses) {
if (msie && msie <= 8) {
if (cssClasses) {
forEach(cssClasses.split(' '), function(cssClass) {
if (!jqLiteHasClass(element, cssClass)) {
element.className = trim(element.className + ' ' + trim(cssClass));
}
});
}
} else {
if (cssClasses && element.setAttribute) {
var existingClasses = (' ' + (element.getAttribute('class') || '') + ' ')
.replace(/[\n\t]/g, " ");

forEach(cssClasses.split(' '), function(cssClass) {
cssClass = trim(cssClass);
if (existingClasses.indexOf(' ' + cssClass + ' ') === -1) {
existingClasses += cssClass + ' ';
}
});

element.setAttribute('class', trim(existingClasses));
}
}
}

关于javascript - Angular 无法在 IE8 文档模式 7 下工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22958807/

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