Skip to content
Go back

iframe 跨域锁定帧率

Edit

主游戏用 iframe 嵌子游戏时,如果两边跨域,浏览器会限制子游戏里的 requestAnimationFrame,动画 / Canvas / WebGL 容易掉帧。用户在子游戏 iframe 里点一下之后,帧率又会恢复。这是浏览器对跨域 iframe 的锁帧策略,不是游戏循环写挂了。

现象

父页面没法可靠地替子游戏「假点」解锁,跨域也过不了真实用户手势的判定。

方案:同源嵌入

主游戏和子游戏应放在同一源下用 iframe 嵌入。同源 iframe 一般不会吃这套跨域锁帧,子游戏可以一进来就满帧跑,也不用再引导用户多点一次。

常见做法:

跨域嵌套再靠「点一下解锁」只适合广告类内容;主从游戏这种强互动场景,直接上同源更干净。


Edit
Share this post on:

Previous Post
Git 忽略文件的三种方式
Next Post
前端工具链对比