我在firefox中遇到了一个问题(已在Chrome和IE中测试并运行),因此自定义过滤器无法正常运行。这是重复的模板:
<img src="/Images/blank.gif" ng-class="a.VolunteerStatus | classSwitch:{1:'icon assignment_status assignment_empty',2:'icon assignment_status assignment_inactive',3:'icon assignment_status assignment_unverified',4:'icon assignment_status assignment_verified'}" ng-click="toggleVolunteerStatus(a)" title="" />
这基本上是一个带有css类的图像,它根据底层状态进行切换。这是我模块中的过滤器:
departmentModule.filter('classSwitch', function () {
return function (input, map) {
return map[input] || '';
};
});
Firefox在控制台中没有显示错误,但 firefox中的过滤器总是返回第二个开关,而不管基础数据。所以所有元素都有类:icon assignment_status assignment_inactive
如果有帮助,这里是在Firefox中呈现的元素:
<img class="icon assignment_status assignment_inactive" src="/Images/blank.gif" ng-class="a.VolunteerStatus | classSwitch:{1:'icon assignment_status assignment_empty',2:'icon assignment_status assignment_inactive',3:'icon assignment_status assignment_unverified',4:'icon assignment_status assignment_verified'}" ng-click="toggleVolunteerStatus(a)" title="">
见Marck提供的plunker here。
开发人员的想法是什么?您的阅读时间非常感谢。 感谢。
答案 0 :(得分:2)
您的CSS使用Firefox无法识别的非标准属性...
例如,这个:
background-position-y: -20px;
应该是:
background-position: 0 -20px
我在this Plunker中替换了这些属性,当您更新范围属性时,显示的图标在Firefox中会发生变化。