【问题标题】:Safari renders some of my text garbled and distorted; selecting the text cleans it up a bitSafari 使我的一些文本出现乱码和扭曲;选择文本会稍微清理一下
【发布时间】:2019-03-17 01:53:59
【问题描述】:

此文本通常在页面加载时看起来很好。这种失真通常发生在我打开一个模式,输入一个从 API 请求数据的代码,并在成功响应后关闭模式时。检索此代码会改变价格,但 Safari 不会更新文本,直到我与它交互,比如选择它。

您在此处看到的第一个价格 ($10,578.30) 是旧价格。 Safari 只是没有重新绘制该文本。

这到底是怎么回事??

  • Safari 12.0
  • macOS 10.13.6 High Sierra

【问题讨论】:

  • 您是否尝试将其关闭再打开?
  • 是的。我试着吹它。
  • 可以附上这部分的HTML和JavaScript代码吗?也许问题就在那里。
  • 对我来说看起来像是浏览器中的渲染错误。它无法识别,它需要重新绘制该区域,直到您通过选择该区域触发另一个视觉更改。 In this question 奇怪的行为可以用 CSS 修复,所以也许可以尝试使用一些属性。复制代码会非常有用。

标签: safari rendering repaint


【解决方案1】:

您可以使用jquery 来强制重绘有问题的元素。 假设您的错误元素有:theBuggyElement 类名

把它放在代码中的某处:

$.fn.redraw = function(){
  $(this).each(function(){
    var redraw = this.offsetHeight;
  });
};

然后在更新后使用这个:

$('.theBuggyElement').redraw();

【讨论】:

  • 随着其他值的变化,内容已经被重绘了几次。不幸的是,这并没有解决问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多