Javascript 在iframe中嵌入HTML5游戏,能够在不同的域上切换到全屏模式

Javascript 在iframe中嵌入HTML5游戏,能够在不同的域上切换到全屏模式,javascript,html,iframe,embed,fullscreen,Javascript,Html,Iframe,Embed,Fullscreen,我正在尝试为archive.org中嵌入的游戏启用全屏支持 嵌入代码的示例如下: <iframe src="https://archive.org/embed/DukeNukem" width="560" height="384" frameborder="0" webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen></iframe> 全屏模式在archive.org游戏页面上可

我正在尝试为archive.org中嵌入的游戏启用全屏支持

嵌入代码的示例如下:

<iframe src="https://archive.org/embed/DukeNukem" width="560" height="384" frameborder="0" webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen></iframe>

全屏模式在archive.org游戏页面上可用-请参阅实际游戏页面和全屏按钮(右上角):

我想要的是能够将嵌入式iframe和游戏画布从远程网站切换到全屏模式

我已经尝试过各种Javascript,并且能够使iframe进入全屏模式,但是游戏画布本身与我尝试过的每个js实现保持相同的大小,从而产生大的全屏iframe,带有小的游戏视口和大量的黑色空间。如果可能的话,我希望实际游戏画布的大小与archive.org上全屏按钮的工作方式类似

我希望能找到一种创造性的方式,通过嵌入html5 iframe游戏在不同的领域启用全屏模式

我认为使用AdobeFlash可能是可行的,但如果可能的话,我更愿意避免使用Flash,因为支持正在逐渐消失。我的另一个想法是,通过按按钮将用户浏览器缩放到原始游戏画布大小,从而让用户处于准全屏模式。由于这个游戏的分辨率是如此之低,无论如何,我不认为它会导致太多的图形质量损失。只是不确定是什么代码使这种缩放的准全屏模式能够动态调整用户屏幕大小,并集中在iframe/game画布上。当然还有更好的办法,你可以考虑启用全屏模式上的嵌入,我很想听听你的创意

提前感谢您的帮助-非常感谢!!如果没有别的,我的问题将让你体验一点怀旧,如果你足够大,记得杜克核武器

//试试这种代码的和平
//try this peace of code 

//do not forget to change the src in the iframe tag
<html> 
    <head> 
        <title>full screen iframe</title> 
        <style type="text/css"> 
            html { 
                overflow: auto; 
            } 
            html, 
            body, 
            div, 
            iframe { 
                margin: 0px; 
                padding: 0px; 
                height: 100%; 
                border: none; 
            } 
            iframe { 
                display: block; 
                width: 100%; 
                border: none; 
                overflow-y: auto; 
                overflow-x: hidden; 
            } 
        </style> 
    </head> 
    <body> 
    <iframe src="" frameborder="0"
    marginheight="0"
    marginwidth="0"
    width="100%"
    height="100%"
    scrolling="auto"></iframe>
    </body> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    </html> 
//不要忘记更改iframe标记中的src 全屏iframe html{ 溢出:自动; } html, 身体 分区, iframe{ 边际:0px; 填充:0px; 身高:100%; 边界:无; } iframe{ 显示:块; 宽度:100%; 边界:无; 溢出y:自动; 溢出x:隐藏; }
可能是他们限制了它。如果我将iframe的宽度和高度设置为全屏值,它会更大,覆盖所有iframe-但是如果按PLAY,游戏将在主机服务器上渲染,从而向iframe提供低分辨率的结果。是的,这非常节省,我整天都在尝试不同的js等来找到解决方案,但仍然无法实现全屏体验。我能做的最好的事情就是在iframe中加载游戏后手动缩放浏览器。想知道是否有一种方法可以自动缩放用户浏览器以创建这种准全屏模式?任何东西都比现在加载的小窗口要好——即使只是缩放浏览器窗口也能创造更好的游戏环境。如果我能创造一些东西,至少让它的尺寸大大增大或接近全屏,那将是一种改进。即使在archive.org上加载游戏画布之后,你也可以按全屏按钮将其最大化。如果我能让它与嵌入的iframe一起工作,那么类似的事情将是惊人的。如果你将宽度:100%添加到#canvashalder,这是加载文档的div,它实际上填充了iframe的100%——但是,由于跨源策略,JS无法做到这一点:|欢迎使用堆栈溢出。您能否添加一些解释来说明这将如何解决问题,不鼓励只使用代码的答案。。