Browser 什么设置浏览器(如firefox)上的渲染速率

Browser 什么设置浏览器(如firefox)上的渲染速率,browser,html-rendering,Browser,Html Rendering,所有浏览器(通过实验)似乎都以大约20赫兹的频率在屏幕上呈现html(即,它们每秒刷新屏幕20次),即每50毫秒一次 通过研究/实验和常见的观察,人类以大约10赫兹(每秒十次)的速度“决定事情”——例如,试着在一秒钟内做出十张不同的脸——这是可能的——但实际上并没有更快(类似于点击键和点击外汇买卖按钮) 人类的反应速度不能超过10赫兹(100毫秒)——也就是说,我们是100毫秒的生物 但是,人类可以在10-50赫兹的频率下检测到恼人的“闪烁” 因此,浏览器的“屏幕刷新”频率在20赫兹左右对事件做

所有浏览器(通过实验)似乎都以大约20赫兹的频率在屏幕上呈现html(即,它们每秒刷新屏幕20次),即每50毫秒一次

  • 通过研究/实验和常见的观察,人类以大约10赫兹(每秒十次)的速度“决定事情”——例如,试着在一秒钟内做出十张不同的脸——这是可能的——但实际上并没有更快(类似于点击键和点击外汇买卖按钮)

  • 人类的反应速度不能超过10赫兹(100毫秒)——也就是说,我们是100毫秒的生物

  • 但是,人类可以在10-50赫兹的频率下检测到恼人的“闪烁”

  • 因此,浏览器的“屏幕刷新”频率在20赫兹左右对事件做出反应是很好的,但对于检测到令人恼火的HTML元素“移动闪烁”的人来说则不是很好

  • 但是,问题是,使用Javascript以超过20毫秒的速度移动文本不会产生更平滑的移动>>(即,图像仍以浏览器渲染速度闪烁)例如,在www.inferix.com上查看移动但视觉上轻微闪烁的文本等-如果您愿意,请查看生成该移动的javascript-这一切都很简单

  • 因此,除非我们能够控制浏览器刷新率并将其设置得更快(通过使用更多的CPU功率),否则无法使用当前浏览器实现“平滑电视风格”的无闪烁移动

  • Firefox或Chrome是否有人知道是否有计划允许“浏览器HTML/JavaScript”(或用户)设置更高的屏幕刷新/渲染速率,以便在浏览器上显示“BBC新闻电视风格”图形>>因为在此之前,使用浏览器的体验将是枯燥和“幼稚的”而且永远不会影响到电视风格的流畅性和功能——它迫切需要做到这一点,否则“Javascript/HTML/DOM”成为“事实上的人类I/O标准”的势头将被一些自主品牌的I/O(又名MS/Google/IBM/Apple)所失去这将比以往任何时候都更具优势,然后作为封闭的标准和协议主导人类I/O——所以我们都将回到suare one

  • 我们可以修复浏览器吗:

    也许修复方法已经存在,但是隐藏了

    浏览器开发专家:

    我们如何从JAVASCRIPT或HTML中提高浏览器的渲染速率?或者(CPU允许的话)您可以让浏览器的渲染速率比CRENT速率(大约20赫兹)快很多吗

    最后一个想法:

    我们人类是10赫兹的决策者和20赫兹的视觉运动检测器>>,但“HTML/JAVASCRIPS/DOM”在AI-HUMAN和人与人之间的通信领域占据主导地位,使用相同的技术对完全相同的信息进行感知AI通信(即,其优点是人类和AI也可以读取),渲染速度必须快几百倍,甚至数千倍(对于AI-AI使用),然而,这还不需要,但在短短10年内可能是的

    感谢您的认真回复…..

    A.请仅提供基本的“JavaScript/HTML/Browser”回复


    B.没有“其他语言或其他程序”的回答,谢谢。

    如果问题中没有代码示例来查看错误所在,我只能猜测您正在使用
    setTimeout()
    制作动画。(不管怎么说,听起来就是这样,快速浏览一下您提到的站点确实会发现代码中有不少
    setTimeout
    调用)

    这是一个问题,因为
    setTimeout()
    被“钳制”为4ms的最小超时时间。这是API的一个精心设计的功能,以防止失控脚本使浏览器无法使用,但它确实意味着
    setTimeout()
    并不真正适合用于动画

    幸运的是,有一个可供选择的API是专门为动画设计的。您应该使用
    requestAnimationFrame()
    ,而不是
    setTimeout()

    requestAnimationFrame()
    在下一次可用的屏幕刷新时触发(每秒最多60次,但如果计算机负载过重或动画脚本太复杂,无法在一个刷新周期内完成,则会减慢速度)


    还有其他选项可以更频繁地触发javascript事件(更多信息请参见),但对于动画,您应该坚持使用
    requestAnimationFrame()
    ;这就是它的设计目的。

    请忽略我的几个打字错误。。。。thanksI已经扩展了标签,以满足Firefox Gecko布局引擎用户的需求——基本上,我正在想象一个用户或HTML“点击”的“Firefox TURBO按钮”,让Gecko获得更大的CPU和硬件资源份额(即“Fastfox”按钮)。你做了哪些实验来获得你描述的结果?浏览器实际上可以以每秒60帧的速度制作动画(即屏幕刷新率)。我怀疑你的实验是基于调用
    setTimeout()
    ,超时为零?是这样吗?如果是这样的话,您的实验是有缺陷的,因为
    setTimeout()
    API上有明确的限制;请提供更多信息,以及如何应对。好的,谢谢spudley-这就是我目前所需要的-我已经忘记了我在实验中做了什么-那是很久以前的事了-我将在这里检查并在评论中报告-我将很快(下周)这样做-在我真正检查之前,猜测没有任何意义-但从表面上看,这似乎对我来说是个好消息,60赫茨将是可以容忍的。。。。谢谢你的评论。。。。布莱恩:谢谢——这就是我目前所需要的——我将在下周调查——并(在这里)汇报——但是