Google Chrome间歇性加载问题:可能以编程方式禁用"预测网络操作..."?

Reu*_*ben 5 html5 load google-chrome

我在谷歌浏览器中的网站遇到了一个非常奇怪的问题:

当我点击链接(从列表视图到详细信息页面)时,页面挂起,我Chrome会抛出一个对话框,要求我杀死该页面.页面永远不会显示.

但是,如果我直接导​​航到该页面,它会在Chrome中加载而不会出现任何问题.这两个操作(单击链接导航到页面)在Safari和Firefox中都能正常工作.

在Chrome的设置中禁用"预测网络操作以提高网页加载效果"似乎可以解决问题,但这不是一个可行的解决方案,因为我无法控制用户的浏览器设置.

关于这种情况的更多细节:

  • 链接只是一个常规<href>.我没有做任何javascript click()处理或其他任何事情.我没有使用任何'prefetch'或'prerender' <link>元素.

  • 所有页面都使用W3 html5验证器进行验证.

  • 我正在导航的页面加载了很多JS,使用Knockout.js进行渲染并通过HTTP加载视频文件.

  • 在该页面的场合负载(经过很漫长的等待),Chrome似乎在后台已经使整个页面,并加载所有外部资源.如果我直接导​​航到页面,它不会预加载任何东西(我正在使用knockout来显示外部资源加载时的"请稍候"消息).

  • 当我使用Charles记录网络请求时,Chrome似乎立即加载了该页面的HTML,但外部资源的请求似乎永远需要.

  • 如果我查看活动监视器中的CPU使用情况,"Google Chrome渲染器"在从中加载时使用100%CPU href,但直接从页面加载时仅使用30%.

  • 我正在使用最新版本的Chrome(22.0.1229.94)

所以 - 我的问题

有没有办法以编程方式禁用"预测网络操作以提高页面加载性能"?

或者是否有其他解决方案可以解决这个问题?

Dav*_*der 0

只是在浏览高票数未回答的问题时,我遇到了这个问题,并且我曾经因完全不同的原因陷入类似的情况(chrome 正在预加载一个巨大的文件,我无法为每个用户加载)。我当时应用的相当简单的解决方案是通过 Javascript 打开链接,而不是一个简单的href但效果很好的解决方案。不管怎样,你的问题可能已经解决了,但看到浏览量,我想我至少可以分享这个小小的见解。