当前位置: 首页 > news >正文

做公司网站需要注意哪些网络营销这个专业怎么样

做公司网站需要注意哪些,网络营销这个专业怎么样,中国核工业二三建设有限公司待遇,如何提升网站的流量目录 1 需求场景 2 用到的技术 3 日常检测方法 4 一个有意思的场景 5 升级版实现一 5.1 新建 /utils/browser.js 5.2 项目业务组件中使用 6 升级版实现二 6.1 安装js-tool-big-box工具库 6.2 引入 browserBox 对象 6.3 以控制累加定时器为例 6.4 查看定时器效果 1…

目录

1 需求场景

2 用到的技术

3 日常检测方法

4 一个有意思的场景

5 升级版实现一 

5.1 新建 /utils/browser.js

5.2 项目业务组件中使用

6 升级版实现二

6.1 安装js-tool-big-box工具库

6.2 引入 browserBox 对象 

6.3 以控制累加定时器为例

6.4 查看定时器效果


1 需求场景

我们做前端开发,会有这样一种场景。比如说,网页有个setInterval做的一个轮播图,然后我们切换浏览器的标签呢,继续去做一件其他的事情。当做完这件事的时候呢,再切换回来,轮播图就会像疯了一样的转动几次,然后又恢复正常。

又或者呢,我们希望网页中的视频,在浏览器最小化的时候呢,视频就停止播放。当浏览器再被切换回屏幕最上层的时候呢,视频继续播放。

2 用到的技术

这里,所用到的技术呢,就是visibilitychange。visibilitychange是一个事件,用于监听当前页面的可见性状态是否发生改变。这个事件通常用于处理当用户切换到另一个标签页或者最小化浏览器窗口时的情况。

比如用户将浏览器切换到另一个标签页的时候,或者是将网页窗口最小化的时候,或者是移动端APP嵌入的H5网页,然后用户将APP切换到后台运行的时候,浏览器都会监听到这个事件。

3 日常检测方法

比如我们要监测一个视频,当浏览器网页最小化的时候,视频就停止播放。当浏览器被切换恢复的时候,视频就继续播放。以一个Vue项目为例:

<script>export default {name: 'PagePlay',data () {return {canPlay: false,}},created() {},mounted() {document.addEventListener('visibilitychange', function() {if (document.hidden) {// 页面不可见,视频停止播放this.canPlay = false;} else {// 页面可见,视频继续播放this.canPlay = true;}});}
}
</script>

4 一个有意思的场景

有一段时间的工作呢,就是通过网页帮助叔叔们播放监控视频。有一次,有人提出要来看一个加油站的监控视频,要播放前一天晚上的。为什么要看视频呢,是老板提出的。老板一般下午就会回家去,让一个工人在加油站上班,给晚上需要加油的用户们加油。但老板第二天去了加油站,发现,这个工人还在呼呼大睡,而且外面的油洒了一地。老板就问工人,咋回事,咋晚上还把油喷洒到地上了呢。工人说,不可能啊,昨晚有人来加油,其中一个穿着红裙子的客户,让给加油,还给了我现金。但工人从兜里拿出来的时候却是2张纸。后来我们就开始播放那天的视频。

视频由于需要对照着一些数据来看,所以需要时不时的切换,切换后就需要暂停,再次打开的时候呢,就需要继续播放,这就用到了这个 visibilitychange 监听技术。

后来看了几遍视频后才发现,嗨,原来是工人睡懵了,晚上他自己从屋里走出来,和空气说话,然后对着地上加油。这件事就这么过去了。

5 升级版实现一 

上面第3步的实现没有问题,但这样写太初级了,我们如果有多处使用,就必须要每个业务组件里都去实现。我们必须把他添加到项目的公共方法中去,所以就需要新建一个 utils 目录。这样,公共方法和业务组件内的实现可以是:

5.1 新建 /utils/browser.js

新建目录后,我们写上公共方法

const getPageVisibility = function(callback) {document.addEventListener('visibilitychange', function() {const isPageVisible = !document.hidden;callback(isPageVisible);});       
}export default getPageVisibility ;

5.2 项目业务组件中使用

到了业务组件中可以这样使用

<script>
import getPageVisibility from '../utils/browser';export default {name: 'PageIndex',data () {return {canPlay: false,}},created() {},mounted() {getPageVisibility((isVisible) => {if (isVisible) {this.canPlay = true;} else {this.canPlay = false;}});},
}
</script>

6 升级版实现二

但是第5步这样实现呢,还是有问题的。你换个项目呢,还得把代码拷过去;人家问你咋解决的,你跟人家说去哪个哪个项目里找吧,在那里呢;所以啊,还是给大家推荐一个快捷高效的库,没错,js-tool-big-box。高效的前端开发,从js-tool-big-box开始。

6.1 安装js-tool-big-box工具库

执行安装命令

npm install js-tool-big-box

6.2 引入 browserBox 对象 

检测浏览器切换状态的公共方法,被放到了browserBox对象下面,可以快捷调用。

import { browserBox } from 'js-tool-big-box';

6.3 以控制累加定时器为例

例子中呢,我们就不单纯的操控一个变量了,那太简单了,我们操控一个定时累加器。

<template><div class="box-404"><p>js-tool-big-box</p><p>做功能更丰富的前端JS库</p></div>
</template><script>
import { browserBox } from 'js-tool-big-box';export default {name: 'Page404',data () {return {timer: null,number: 0,}},created() {},mounted() {this.startTimer();// 判断浏览器是否切出或者最小化browserBox.getPageVisibility((isVisible) => {if (isVisible) {this.startTimer();} else {window.clearInterval(this.timer);this.timer = null;}});},methods: {startTimer() {this.timer = setInterval(() => {this.number += 1;console.log('计时器数值:', this.number);}, 990)}}
}
</script>

6.4 查看定时器效果

上图中,我们先使定时器自己执行5秒。然后切换标签,随便去做一些其他事情。然后再切换回来看一下。要达到的效果是:在切换回来之前,不能继续执行。再切换回来之后呢,必须得继续执行,那么效果就达到了。我们来看一下:

 

http://www.hengruixuexiao.com/news/29670.html

相关文章:

  • 山东省疫情防控政策西安优化seo托管
  • 自动生成网页的工具seo 优化
  • 网站代码组件武汉千锋教育培训机构怎么样
  • it培训机构包就业是啥套路福州seo博客
  • 天津设计网站公司最火的推广平台
  • 重庆seo优搜狗seo怎么做
  • 代加工厂都不做网站百度推广账户优化方案
  • 城乡建设官方网站百度收录网站要多久
  • 国外做问卷网站好seo短视频
  • 网站开发强制使用急速内核搜索引擎收录查询工具
  • 导游网站如何建设的优量汇广告平台
  • 2345网址导航官网下载安装seo服务哪家好
  • 物流网站怎么做的郑州seo哪家好
  • 用php做医药网站开题报告今日热搜头条
  • 商城网站支付端怎么做百度大搜推广开户
  • 企业网站banner大图搜索关键词怎么让排名靠前
  • 上海网站建设管理今日国际新闻头条15条简短
  • 环境保护部网站查询建设项目免费发布广告信息平台
  • wordpress reset api优化大师手机版
  • pc网站开发获取位置免费seo优化工具
  • app开发公司重庆seo外包顾问
  • 怎么把网站放到阿里云宁德市疫情
  • 门户网站建设多少钱太原关键词优化服务
  • wordpress 的图片保存在哪网站seo是什么
  • 如何制作推广网站赣州seo排名
  • 做自己网站如何在百度打广告
  • 网站建设价格与方案优秀的网络搜索引擎营销案例
  • vs 2010 网站建设网络营销手段
  • 网站推广营销策划网络整合营销4i原则是指
  • 百度竞价网站源码百度热搜榜怎么打开