网站渲染问题:Safari 4显示内容闪烁,然后是白屏

时间:2011-09-22 07:38:24

标签: javascript html ruby-on-rails css uri

我正在开发一个rails application,我正在从Safari 4用户那里得到一个奇怪且不规则的渲染错误,其中页面短暂出现,但很快就消失了,并被一个空白的白色取代页。

我无法在Lion上的Safari 5中复制问题,但我在Safari 4 for iOS上遇到过多次问题。如果没有访问Snow Leopard或Safari 4,我就无法进行任何测试。

有时重新加载页面允许用户访问内容,但有时在实际发生任何事情之前需要进行十次以上的尝试。

此外,在某些情况下,页面显示正常,但网站上会显示一些部分HTML标记。这可能有也可能没有关系,但我只是在iOS中遇到了这个问题。

现在我最好的猜测是问题是由于数据URI嵌入图像中的某些故障或其他类型的脚本错误引起的,但除此之外我不知道。

访问此处的网站 - http://www.fairviewhs.org

来自嵌入式ruby布局:

<head>
  <%= include_stylesheets :screen, :media => 'screen, projection' %>
  <%= include_stylesheets :print, :media => 'print' %>
  <%= stylesheet_link_tag "event_calendar", :media => 'screen, projection, print' %>
  <!--[if lt IE 8]>
  <%= stylesheet_link_tag "compiled/ie", :media => 'screen, projection' %>
  <![endif]-->
  <link rel="stylesheet" href="/fancybox/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />
  <script src="<%= javascript_path "load" %>" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript" charset="utf-8">
    head.js(
      "https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js",
      "http://gettopup.com/releases/latest/top_up-min.js",
      "<%= javascript_path "rails" %>",
      "<%= javascript_path "application" %>",
      "<%= javascript_path "jquery.sap" %>",
      "<%= javascript_path "sap" %>",
      "<%= javascript_path "forms" %>",
      "<%= javascript_path "nested_form" %>",
      "<%= javascript_path "event_calendar" %>",
      "<%= javascript_path "/fancybox/jquery.fancybox-1.3.4.pack.js" %>",
      "<%= javascript_path "/fancybox/jquery.easing-1.3.pack.js" %>",
      "<%= javascript_path "/fancybox/jquery.mousewheel-3.0.4.pack.js" %>",
      "<%= javascript_path "midiswag" %>"
    );
  </script>
  <%= csrf_meta_tag %>
  <%= favicon_link_tag %>
  <meta charset="utf-8" />
  <%- if @title.blank? -%>
    <title>Fairview High School</title>
  <%- else -%>
    <title>Fairview High School > <%= @title %></title>
  <%- end -%>
</head>

1 个答案:

答案 0 :(得分:0)

我能够找到一台仍然存在Snow Leopard的旧计算机 - 问题是文件http://gettopup.com/releases/latest/top_up-min.js中的脚本错误

我仍然不知道为什么问题仅出现在Snow Leopard和iOS的Safari 4/5中,但是从<head>删除该行代码确实可以解决问题。