我可以使用代码here使任何窗口全屏显示,但是捕获的是将父窗口用户事件应用于任何子窗口。
当我尝试在父母中做这样的事情时:
$("#maximize").click(function(event){
var child = window.open("window.php", "test", "toolbar=0,location=0,menubar=0");
child.focus();
setTimeout(function() {requestFullScreen(child);}, 1000);
)};
我在子控制台中收到此错误,"全屏请求被拒绝,因为未在短暂运行的用户生成的事件处理程序内调用Element.mozRequestFullScreen()"。我理解这是出于安全原因,但按钮点击是用户生成的;它只是在父母身上生成的。
我怀疑它与超时回调有关,但是如果我将其删除,那么孩子似乎全屏闪烁然后回到窗口或者在它有适当的焦点之前尝试全屏,在这种情况下我得到了子控制台,"请求全屏被拒绝,因为请求元素不在当前关注的选项卡中#34;。好像是" sleep();"是我所需要的,并且不赞成。
有没有解决方法或我的用户是否必须在每个子窗口中单击最大化?