本文提供了一段用于实现网页全屏预览的 JavaScript 代码。通过调用 requestFullScreen 及其浏览器前缀,并结合 ActiveXObject 兼容旧版 IE,实现了点击按钮切换全屏状态的功能。
此前尝试多次未成功,最终决定重新发布。尽管撰写过众多前端特效,也常参考或修改网络上的代码,但作者坚持认为这种做法可行。
此处直接展示相关代码。
JavaScript 全屏实现代码
以下是 JavaScript 实现部分的代码。
核心逻辑说明
function fullScreen(el) {
var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen,
wscript;
if(typeof rfs != "undefined" && rfs) {
rfs.call(el);
return;
}
if(typeof window.ActiveXObject != "undefined") {
wscript = new ActiveXObject("WScript.Shell");
if(wscript) {
wscript.SendKeys("{F11}");
}
}
}
function exitFullScreen(el) {
var el= document,
cfs = el.cancelFullScreen || el.webkitCancelFullScreen || el.mozCancelFullScreen || el.exitFullScreen,
wscript;
if (typeof cfs != "undefined" && cfs) {
cfs.call(el);
return;
}
if (typeof window.ActiveXObject != "undefined") {
wscript = new ActiveXObject("WScript.Shell");
if (wscript != null) {
wscript.SendKeys("{F11}");
}
}
}
HTML 结构代码
接下来展示 HTML 结构代码。
受近期工作状态的些许影响,作者对当前工作方向产生了一些迷茫,不确定需要持续投入多久。作者个人更倾向于设计工作,但认为设计难度较高,常感觉自身作品与他人存在较大差距,对此感到无奈。
此处提供一个简单的示例,通过按钮及其点击事件来切换全屏状态。
页面元素结构
<html id="Content">
<body>
<ul>
<li>
<a id="BtnFullOpen" href="javascript:void(0);" rel="external nofollow" rel="external nofollow" title="按“F11”进入全屏模式">
<i class="ace-icon fa fa-arrows-alt"></i>全屏查看
</a>
<a id="BtnFullQuite" href="javascript:void(0);" rel="external nofollow" rel="external nofollow" title="按“F11”关闭全屏模式" style="display:none;">
<i class="ace-icon fa fa-arrows-alt"></i>全屏关闭
</a>
</li>
<li>2</li>
<li>3</li>
<li>5</li>
</ul>
</body>
</html>
务必注意添加调用代码,这是关键步骤。
JS 调用代码
以下是具体的 JavaScript 调用代码。
事件绑定逻辑
var oBtnFullOpen = document.getElementById('BtnFullOpen');
var oContent = document.getElementById('Content');
oBtnFullOpen.onclick = function() {
fullScreen(oContent);
oBtnFullQuite.setAttribute("style", "display:block");
oBtnFullOpen.setAttribute("style", "display:none");
}
var oBtnFullQuite = document.getElementById('BtnFullQuite');
oBtnFullQuite.onclick = function() {
exitFullScreen(oContent);
oBtnFullQuite.setAttribute("style", "display:none");
oBtnFullOpen.setAttribute("style", "display:block");
};
本文仅作为个人备忘,不进行公开发表或信息交流。
以上就是本文的全部内容,希望对读者的学习有所帮助,欢迎支持本站。