问题标签 [navigation-timing-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1833 浏览

html - WebTiming API 中的错误值

我正在使用新的W3C 规范中指定的通过Chrome和 IE 9公开的新webTiming API

出于某种原因,我得到了loadEventEndas 0。这限制了我计算实际加载时间。

这是输出和代码

代码:

有人可以帮我找出问题所在吗?

0 投票
1 回答
1121 浏览

javascript - 监控站点的客户端性能

我想监控页面的客户端性能,我可以通过在该部分的开头启动一个计时器以及获取 onload 事件发生的时间来获取页面的加载时间。但是,这并没有考虑到从服务器请求页面所需的时间。所以在搜索之后我发现我应该使用网络计时 API。我的问题是,虽然“window.performance”适用于chrome,但包括“window.mozPerformance”在内的firefox都没有。那么有谁知道我如何找到我的浏览器启动页面获取请求并完成接收页面最后一个字节的时间?

0 投票
3 回答
10315 浏览

javascript - 通过性能 API 测量站点加载时间

几天前我听了 Steve Souders 的演讲,他提到了新的浏览器正在实施的新性能规范,这很有趣。在他的演讲中,他提到了以下示例作为衡量感知页面加载时间的一种方法:

显然这是一个基本示例,但是在我的开发环境中尝试它时,我得到像 -1238981729837 这样的疯狂数字作为答案,因为 loadEventEnd 是 < 0。

显然有些地方不对劲,可以对这个示例进行许多改进,以提供更多信息并产生更高的可靠性。(我知道这仅在少数浏览器中实现)。

那么,关于如何使用此 api 通过 Javascript 跟踪页面加载时间以分析我的网站性能有哪些建议?

0 投票
1 回答
4570 浏览

javascript - 在 iframe 上使用新的 javascript performance.timing API?

我一直在使用新的 performance.timing javascript API,对它们印象深刻。

这里有一个很好的描述http://www.html5rocks.com/en/tutorials/webperformance/basics/

我有一个重要的用例,我们需要创建一个简单的页面,让世界各地的测试人员可以双击并从我们的站点从世界各地的不同位置获得例如 20 个 URL 的性能。

我们的网站不是 HTML5,所以我们不能直接在我们的页面中嵌入这样的内容(每月有 10 亿个页面,我们无论如何也不想要那么多数据)。所以我的基本计划是一个简单的“包装器”HTML 页面,其中包含在 iframe 中加载 20 个 url 的脚本。是的,我知道!iframe 很烂,但这东西不需要漂亮,只要有效!

Javascript 绝对不是我的强项!所以我需要一些帮助来了解如何为每个独立的 iframe 获取这些数据(当然,如果你有一个经过验证的方法,我很想听听其他方法)。

让您非常简单地了解它的工作原理(我认为目前仅在 Chrome 和 IE9 中)

编辑:

使用@Mawi12345 的想法,我正在尝试以下操作:

0 投票
1 回答
1800 浏览

html - 使用 HTML5 Navigation Timing API 时,navigationStart 时间设置为 0

我正在使用 HTML5 Navigation Timing API 来测量用户在我的网站上感知的页面加载时间。

我正在使用以下代码来测量页面加载时间。

time变量还被添加到 cookie 中,并在用户的后续请求中记录在服务器上。

我面临的问题是记录的时间非常接近当前纪元时间,即navigationStart设置为 0 但loadEventEnd具有非零值(即当前纪元时间)

我在 Chrome/11.0、Chrome/12.0、MSIE 7.0、MSIE 8.0 和 MSIE 9.0 上看到了这种行为

我通过修改上面的代码暂时解决了这个问题,只在navigationStart大于 0 时记录加载时间。但我希望记录所有服务页面的加载时间。

0 投票
2 回答
722 浏览

javascript - Opera 和 safari 中的 Navigation Timing API 实现

我必须捕获有关其导航的客户端数据,即我的页面的响应时间和导航计时 API 中的其他数据参数,但我只能为 firefox 和 chrome 做到这一点。所以任何人都可以告诉我如何在 Safari 和 Opera 上获取这些内容,或者可以实现的一些替代机制。

0 投票
5 回答
9734 浏览

javascript - 我可以在单页应用程序中使用浏览器 Navigation Timing API 处理 Ajax 事件吗?如果不是,有什么好工具?

我们有一个使用 Knockout 和 Backbone 构建的单页应用程序,它可以对服务器进行 Ajax 调用,并进行一些复杂的数据缓存和 DOM 渲染。我们真的很想测量用户看到的性能(并将其记录回服务器)。我似乎无法理解浏览器导航计时 API是否对此有用。从我在示例中看到的情况来看,Navigation Timing API 被绑定到window.performance并且这仅限于页面加载并且不适合监控 Ajax 行为。对或错?如果是假的,我还能用什么?

我很想设置自定义检测点,在它们之间测量时间,例如,对于使用服务器结果进行一些 DOM 渲染的 Ajax 调用。

0 投票
1 回答
149 浏览

time - 如何找到http请求的最后一个字节到达Web服务器的时间

我想找到使用 Java 到达 Web 服务器的 Http 请求的最后一个(最后一个)字节的时间。我已经使用带有一些预定义属性的导航计时 API 使用 JavaScript 进行了尝试。

但我希望它使用 Java。

0 投票
1 回答
443 浏览

javascript - Navigation Timing API 事件未按顺序触发

我正在使用 Navigation Timing API 从页面获取加载事件。我在下面添加了 JS 的片段来输出信息。我注意到奇怪的一件事是时间比我检查控制台loadEventEnd的时间早回来。loadEventStart我认为这应该是不可能的。

0 投票
2 回答
177 浏览

google-chrome - 在哪个导航计时阶段网页显示?

performance.timing存储在网页加载期间发生的各种事件的时间:

导航时序概览
(来源:dvcs.w3.org

我了解到 HTML 标记会被解析,并且既没有“defer”也没有“async”属性的元素在和<script>之间同步执行,然后具有“defer”属性的脚本(即,在文档完成时执行的脚本列表中的脚本解析)之前执行。然后执行带有属性的元素,如果有的话, before被设置为并在 Window 对象上触发事件。domLoadingdomInteractiveDOMContentLoaded<script>asyncdocument.readyStatecompleteload

旋转事件循环,直到将尽快执行的脚本集和将尽快按顺序执行的脚本列表为空。

我的问题是网页内容何时显示?它们是否在解析 HTML 标签时同时显示?还是在脚本执行阶段?或之后loadEventEnd
加载大页面时,页面显示后加载图标仍然旋转一段时间,浏览器是否在此期间执行脚本?