我有一个knockoutjs应用程序,它已经运行了很多年了。浏览器通过SignalR接收消息,然后由Knockoutjs呈现。
现在,如果您在Microsoft Edge中运行该应用程序,则相同的字段不会在屏幕上更新,而其他字段正在更新。它始终是更新一次的相同字段,然后再也不会更新。如果您检查DOM,那么您可以看到它被更改。
经过大量的淘汰过程后,我实际上发现问题似乎是由1行css引起的
html { text-transform: uppercase; }
我已经整理了一个这个bug的小演示,你可以在Chrome / FF / IE9 / IE10 vs Edge中运行。使用应用的样式在Edge中运行代码,然后将其注释掉以查看值更新。
http://jsbin.com/baqozusuge/edit?html,css,js,console,output
链接到github上的代码https://gist.github.com/anonymous/de7610c341e6ee737d8290eb608afb57
任何人都知道这是怎么回事?!似乎Microsoft Edge决定根据当前显示的值的相似性来缓存显示。
答案 0 :(得分:1)
这是正式的微软错误,所以不能修复"通过代码。 https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7451374/