gpt4 book ai didi

javascript - knockout 不评估 IE7 中的表达式

转载 作者:搜寻专家 更新时间:2023-11-01 04:32:57 24 4
gpt4 key购买 nike

当我在 Mozilla 中运行我的程序时,它会解析 knockout 表达式并在可观察数组中显示值。当我在 IE7 中执行相同操作时,它会显示 knockout 代码。

Mozilla 结果

value 1
value 2
value 3

IE7 结果

function observable() { 
if (arguments.length > 0) {
// Write
// Ignore writes if the value hasn't changed
if ((!observable['equalityComparer']) || !observable['equalityComparer'](_latestValue, arguments[0])) {
observable.valueWillMutate();
_latestValue = arguments[0];
if (DEBUG) observable._latestValue = _latestValue;
observable.valueHasMutated();
}
return this; // Permits chained assignments
}
else {
// Read
ko.dependencyDetection.registerDependency(observable); // The caller only needs to be notified of changes if they did a "read" operation
return _latestValue;
}
}

我怎样才能使它在 IE7 中正常工作?

最佳答案

IE 浏览器不支持数组的 indexOf,这会导致 knockout.js 框架出现问题。

添加以下 javascript,它可能会解决您的问题:

    //
// IE browsers do not support indexOf method for an Array. Hence
// we add it below after performing the check on the existence of
// the same.
//
if (!Array.prototype.indexOf)
{
Array.prototype.indexOf = function (obj, start)
{
for (var i = (start || 0), j = this.length; i < j; i++)
{
if (this[i] === obj)
{
return i;
}
}
return -1;
};
}

关于javascript - knockout 不评估 IE7 中的表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13648209/

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