我一直无法明确地在IE8中呈现列表。所有其他浏览器都会按预期执行以下代码,但是,IE8会完全忽略该函数。非常感谢任何提示、建议和/或解决方案,干杯。
alert("workflow.js"+ " this call goes off in IE8");
$scope.makeAndGetList = function(list) {
//todo: lj: IE8 doesn't make it here
//alert("workflow.js"+ " no IE");
var parts = list.split('.'),
current = $scope.workflow;
_.each(parts, function(part, index) {
if (current[part] == undefined) {
current[part] = (index == parts.length - 1) ? [] : {};
}
current = current[part];
//todo: lj: IE8 doesn't make it in here
// app.appAlert("workflow.js"+ " line 19");
});
alert("workflow.js - this functions correctly executes in IE8");
以下是所请求的HTML:
<sa-list list="makeAndGetList('areas_of_need')" edit="true" model="areas_of_need" array-mode="true">
<sa-lookup style="multiselect" override="false" list="areas_of_need.terms" model="areas_of_need" model-key="need" label="{{locale.iprc.areas_of_strengths_and_needs.needs}}"></sa-lookup>
</sa-list>
发布于 2012-11-22 10:11:29
我不确定这是否是你的问题(你能在你的指令中发布一个jsfiddle吗?),但这是可能的。IE8只能将angular指令作为属性(而不是元素)来处理。幸运的是,将角度元素更改为属性很容易。例如,对于指令"saList",其中html显示为<sa-list>
,请将html重写为<div sa-list>
(并确保您的指令具有属性restrict: 'A'
,而不是restrict: 'E'
)。请参阅此处的示例(在IE8中有效):http://jsfiddle.net/dannystaten/hQn9F/
发布于 2012-10-16 01:02:40
看看我为angular-ui项目写的ieshiv。为您提供了一种简单的合并方法。
发布于 2013-04-06 02:23:43
还可以尝试升级到Angular UI Bootstrap的0.2.0版本。对于"Alert“控件,我也面临着类似的问题。将其升级到0.2.0并将其用作属性后,解决了我的问题
https://stackoverflow.com/questions/12076333
复制相似问题