马黑黑 发表于 2023-1-31 13:01

全屏帖子插件

本帖最后由 马黑黑 于 2023-1-31 17:04 编辑

一、插件代码
(function(mkFS) {let setFullScreen = (user_set) => {let pa = user_set.pa;if(typeof(pa) !== 'object') return false;if(!user_set.set) user_set.set = 'color: snow; background: black; border: 2px solid snow; left: 40px; bottom: 40px;';btnMsg = document.createElement('span');btnMsg.style.cssText = `position: absolute; border-radius: 8px; padding: 4px; cursor: pointer; z-index:998; ${user_set.set}`;btnMsg.innerText = '全屏观赏';btnMsg.style.display = 'none';pa.appendChild(btnMsg);let timerId, fs = false;btnMsg.onclick = () => fs ? document.exitFullscreen() : pa.requestFullscreen();pa.addEventListener('mousemove', (e) => {clearTimeout(timerId);btnMsg.style.display = 'block';timerId = setTimeout('btnMsg.style.display = "none"', 3000);});document.addEventListener('fullscreenchange', () => {if (document.fullscreenElement !== null) {fs = true;btnMsg.innerText = '退出全屏';} else {fs = false;btnMsg.innerText = '全屏观赏';}});};mkFS.FS = setFullScreen;})(this);二、调用方法
FS({
      pa: papa,
      set: 'color: snow; background: green; border: 2px solid snow; left: 20px; top: 20px;',
});

三、插件接口参数说明

(一)pa :此参数设置帖子主体元素标识,比如说,帖子的父框有 id="mybox" ,则 pa 参数设置为 pa: mybox, 。假如没有id,请给帖子父框设置一个 id ;若父框是 classs = "mybox“,则可以这么处理:

<script>
let mybox = document.querySelector('.mybox'); //声明帖子父框标识
FS({
      pa: mybox,
      set: 'color: snow; background: green; border: 2px solid snow; left: 20px; top: 20px;',
});
</script>


(二)set :如(一)中所举示例所示,set 参数用于配置全屏操作按钮样式,使用标准的 CSS 语句,CSS属性最好包含:

① color 按钮文本颜色;
② background 按钮背景色
③ border 按钮边框大小、风格及颜色
④ left / right 按钮水平位置
⑤ top / bottom按钮垂直位置

四、其他

(一)因为按钮要追加到指定父元素之上,所以要求参数一 pa 必须为一个可做容器的元素,如 div,iframe 等,不能做容器的元素,如 img 之类的不可以,若强行用,全屏时按钮不可见。

(二)之前的没有提供全屏的播放器,可以加入这个插件,使用示例如下:

<script>
//这一行是播放器插件
//这一行是全屏插件

HCPlayer({
      //播放器相关参数设置
});

//下面是全屏参数配置
FS({
      pa: papa,
      set: 'color: snow; background: green; border: 2px solid snow; left: 20px; top: 20px;',
});


</script>

马黑黑 发表于 2023-1-31 13:03

<style>
#papa { margin: 0 0 0 calc(50% - 593px); width: 1024px; height: 640px; background: linear-gradient(to right bottom,tan,black); box-shadow: 3px 3px 20px #000; position: relative; z-index: 1; }

</style>

<div id="papa"></div>


<script>
(function(mkFS) {let setFullScreen = (user_set) => {let pa = user_set.pa;if(typeof(pa) !== 'object') return false;if(!user_set.set) user_set.set = 'color: snow; background: black; border: 2px solid snow; left: 40px; bottom: 40px;';btnMsg = document.createElement('span');btnMsg.style.cssText = `position: absolute; border-radius: 8px; padding: 4px; cursor: pointer; z-index:998; ${user_set.set}`;btnMsg.innerText = '全屏观赏';btnMsg.style.display = 'none';pa.appendChild(btnMsg);let timerId, fs = false;btnMsg.onclick = () => fs ? document.exitFullscreen() : pa.requestFullscreen();pa.addEventListener('mousemove', (e) => {clearTimeout(timerId);btnMsg.style.display = 'block';timerId = setTimeout('btnMsg.style.display = "none"', 3000);});document.addEventListener('fullscreenchange', () => {if (document.fullscreenElement !== null) {fs = true;btnMsg.innerText = '退出全屏';} else {fs = false;btnMsg.innerText = '全屏观赏';}});};mkFS.FS = setFullScreen;})(this);
FS({
        pa: papa,
        set: 'color: snow; background: green; border: 2px solid snow; left: 20px; top: 20px;',
});
</script>

红影 发表于 2023-1-31 13:50

这个单独打包的好,可以为以前没做全屏的帖子加个全屏插件了{:4_199:}

庶民来了 发表于 2023-1-31 15:41

我以一个观众的身份,前来捧个人场。

小辣椒 发表于 2023-1-31 16:44

黑黑全屏的插件也是出来了{:4_199:}

马黑黑 发表于 2023-1-31 17:05

红影 发表于 2023-1-31 13:50
这个单独打包的好,可以为以前没做全屏的帖子加个全屏插件了

对,任何帖子或者自己的web页需要全屏的,都可以

马黑黑 发表于 2023-1-31 17:05

小辣椒 发表于 2023-1-31 16:44
黑黑全屏的插件也是出来了

其实这个早就出来了的,我没有单独发而已

马黑黑 发表于 2023-1-31 17:06

庶民来了 发表于 2023-1-31 15:41
我以一个观众的身份,前来捧个人场。

{:5_108:}

小辣椒 发表于 2023-1-31 17:08

马黑黑 发表于 2023-1-31 17:05
其实这个早就出来了的,我没有单独发而已

我今天不能看文字,看屏幕会头晕{:4_198:}

今天也是做不了帖

马黑黑 发表于 2023-1-31 17:09

小辣椒 发表于 2023-1-31 17:08
我今天不能看文字,看屏幕会头晕

今天也是做不了帖

休息先吧

小辣椒 发表于 2023-1-31 17:10

马黑黑 发表于 2023-1-31 17:09
休息先吧

只能看一下下,不能时间长

马黑黑 发表于 2023-1-31 17:10

小辣椒 发表于 2023-1-31 17:10
只能看一下下,不能时间长

调养好了再说

红影 发表于 2023-1-31 20:37

马黑黑 发表于 2023-1-31 17:05
对,任何帖子或者自己的web页需要全屏的,都可以

这个很细致,黑黑真棒{:4_187:}

马黑黑 发表于 2023-1-31 20:38

红影 发表于 2023-1-31 20:37
这个很细致,黑黑真棒

一般般

红影 发表于 2023-1-31 20:57

马黑黑 发表于 2023-1-31 20:38
一般般

很实用{:4_187:}

马黑黑 发表于 2023-1-31 20:58

红影 发表于 2023-1-31 20:57
很实用

有需求它就实用

红影 发表于 2023-1-31 21:19

马黑黑 发表于 2023-1-31 20:58
有需求它就实用

随时随地能派上用途,就是实用呀。

马黑黑 发表于 2023-1-31 21:47

红影 发表于 2023-1-31 21:19
随时随地能派上用途,就是实用呀。

不一定。全屏不是刚需。

红影 发表于 2023-1-31 22:16

马黑黑 发表于 2023-1-31 21:47
不一定。全屏不是刚需。

反正有这个就是好,需要用的时候知道可以找得到{:4_173:}

马黑黑 发表于 2023-1-31 22:32

红影 发表于 2023-1-31 22:16
反正有这个就是好,需要用的时候知道可以找得到

那倒也是
页: [1] 2 3
查看完整版本: 全屏帖子插件