我正在尝试使用JavaScript FullScreen API,从此处使用当前非标准实现的变通方法:
https://developer.mozilla.org/en/DOM/Using_full-screen_mode#AutoCompatibilityTable
可悲的是,它表现得非常不稳定.我只关心Chrome(使用v17),但由于我遇到问题,我在Firefox 10中进行了一些测试以进行比较,结果相似.
下面的代码尝试将浏览器设置为全屏,有时它可以工作,有时不工作.它始终调用警报以指示它正在请求全屏.这是我发现的:
我的代码如下:
function DoFullScreen() {
var isInFullScreen = (document.fullScreenElement && document.fullScreenElement !== null) || // alternative standard method
(document.mozFullScreen || document.webkitIsFullScreen);
var docElm = document.documentElement;
if (!isInFullScreen) {
if (docElm.requestFullscreen) {
docElm.requestFullscreen();
}
else if (docElm.mozRequestFullScreen) {
docElm.mozRequestFullScreen();
alert("Mozilla entering fullscreen!");
}
else if (docElm.webkitRequestFullScreen) {
docElm.webkitRequestFullScreen();
alert("Webkit entering fullscreen!");
}
}
}
Run Code Online (Sandbox Code Playgroud) 如果我没有指定任何尺寸,iframe看起来很小.如果我指定尺寸如下,那么它不适合不同的屏幕分辨率
<iframe name="report"style="height:1200px;width:800px;">
Run Code Online (Sandbox Code Playgroud)
有没有办法自动允许iframe延伸到整个屏幕?
当我们点击它时,我正试图全屏显示我的网站元素,它适用于Chrome,IE,但不适用于Firefox.
我去了microsoft全屏API,我测试了代码,这些浏览器都没有问题.
这是我想要全屏放入我网站的部分.
<div class="wrap">
<div class="signin">
<div style="margin: 2px 0px -25px 10px;"><h1>Sign In or <a href="<?php echo $this->url(array('module' => 'default','controller'=>'paid-sign-up','action'=>'index'),null,true); ?>" style="color:#F00;text-decoration:none;">Signup</a></h1></div>
<?php echo $this->signin(); ?>
<span class="forget">
<a href="<?php echo $this->url(array('module' => 'default','controller'=>'forgot-password','action'=>'index'),null,true); ?>">Forgotten Password?</a> </span>
</div>
Run Code Online (Sandbox Code Playgroud)
这里是我使用的脚本
<script type="text/javascript">
var inFullScreen = false; // flag to show when full screen
var fsClass = document.getElementsByClassName("wrap");
for (var i = 0; i < fsClass.length; i++) {
fsClass[i].addEventListener("click", function (evt) {
if (inFullScreen == false) {
makeFullScreen(evt.target); // …Run Code Online (Sandbox Code Playgroud)