首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用javascript加载页面时的进度条(没有JQuery)

使用JavaScript加载页面时的进度条是一种在页面加载过程中显示进度的技术。它可以提供用户友好的交互体验,让用户知道页面加载的进度,并在加载完成后隐藏进度条。

实现这种进度条的方法有很多种,以下是一种基本的实现方式:

  1. 创建一个HTML元素作为进度条,可以是一个<div>元素,设置其样式和位置。
  2. 使用JavaScript监听页面加载事件,例如window.onload事件或DOMContentLoaded事件。
  3. 在事件处理函数中,获取页面加载的进度,可以使用document.readyState属性来判断页面加载状态。
  4. 根据页面加载的进度,更新进度条的显示,可以通过改变进度条元素的宽度或其他样式属性来实现。
  5. 当页面加载完成后,隐藏进度条。

以下是一个简单的示例代码:

代码语言:txt
复制
<!DOCTYPE html>
<html>
<head>
  <style>
    #progress-bar {
      width: 0%;
      height: 5px;
      background-color: blue;
      position: fixed;
      top: 0;
      left: 0;
      transition: width 0.3s;
    }
  </style>
</head>
<body>
  <div id="progress-bar"></div>

  <!-- 页面内容 -->

  <script>
    var progressBar = document.getElementById('progress-bar');

    function updateProgressBar() {
      var progress = Math.floor((document.readyState / 4) * 100); // 根据页面加载状态计算进度
      progressBar.style.width = progress + '%'; // 更新进度条宽度
    }

    document.addEventListener('readystatechange', function() {
      if (document.readyState === 'complete') {
        progressBar.style.display = 'none'; // 隐藏进度条
      } else {
        progressBar.style.display = 'block'; // 显示进度条
        updateProgressBar();
      }
    });
  </script>
</body>
</html>

这个示例中,我们创建了一个高度为5像素的蓝色进度条,并使用updateProgressBar函数根据页面加载状态更新进度条的宽度。在页面加载完成后,我们隐藏进度条。

这种进度条可以应用于任何需要加载时间较长的页面,例如单页应用程序、图像库、视频网站等。它可以提供实时的加载进度反馈,改善用户体验。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云主页:https://cloud.tencent.com/
  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 云原生应用引擎(TKE):https://cloud.tencent.com/product/tke
  • 云存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云物联网平台(IoT Hub):https://cloud.tencent.com/product/iothub
  • 腾讯云移动开发平台(MTP):https://cloud.tencent.com/product/mtp
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

jQuery模拟页面加载进度条

因为我们无法通过任何方法获取整个页面的大小和当前加载了多少,所以想制作一个加载进度条唯一办法就是模拟。那要怎么模拟呢?   ...我们知道,页面是从上往下执行,也就是说我们可以大致估算出在页面的某个位置加载了多少,而后用jq模拟出一个进度条来显示。   ...为什么要这样,因为样式我们放head里原因是保证页面加载第一步就把样式加载好,这样页面不会乱。而JS则不需要,再加上页面上大文件主要也就是js,所以放在body里加载js是为了进度条考虑。   ...进度条画好了,jquery引用了,我们现在要写个方法,也就是可以让进度条动起来 var loading = function(a,b){ var c = b*1.5; if(b==100...,然后,我用了其他几个js库做加载进度测试 loading('正在加载jQuery UI',30); <script type

2.1K10

Android 9.0使用WebView加载Url,显示页面无法加载

最近使用WebView加载Url显示页面,因为之前已经使用过很多次这种方式了,打包后在6.0测试机上测试没什么问题,然后安心将包给测试,测试大佬手机系统是Android 9.0,所以就出现了页面无法加载情况...,还以为是自己代码哪里写错了,检查了很多遍都没发现什么问题,然后在5.0,7.0,8.0测试机上测试都没问题,那就想到是9.0系统问题了,先看页面报错图: [fd6yx0hwl5.png] 在这里插入图片描述...要解决这个问题有以下三种方案,也适用于http无法访问网络问题: 1.将url路径地址由http改成https,这就需要让后台大佬更改了。...3.既然默认情况下禁用明文支持,那我们就手动设置启动支持明文,这就需要 使用:android:usesCleartextTraffic=“true” | “false” true: 是否使用明文传输...,也就是可以使用http false: android 9.0 默认情况下使用https [4d0its87cy.png] 在这里插入图片描述 那就是添加:android:usesCleartextTraffic

6.6K30

WordPress 技巧:使用 defer 延迟加载 JavaScript 程序,加快页面渲染

什么是 JavaScript Defer 属性 这种情况大家都可能遇到过:就是 head 中有 N 个脚本,当加载这些脚本时候就会阻塞页面的渲染,也就是常说空白,当然我们可以把源代码中脚本放到...这个时候我们可以使用 Defer 属性,它是 JavaScript 中比较少用一个属性,可能你从来都不会使用它,但是相信看完这里介绍,相信你就不会离开它,它主要功能就是让脚本在整个页面加载完之后再解析...,而非边加载边解析,这对于只包含事件触发 JavaScript 脚本来说,可以提供整个页面加载速度。...if(strpos($url, '.js') === false){ return $url; } return "$url' defer='defer"; }; 注意上面的代码只有在按照...WordPress 方式引入 JavaScript 代码才有效。

41520

从零开始学 Web 之 jQuery(一)jQuery概念,页面加载事件

其中jQuery是最常用一个。 3、什么是 jQueryjQuery 就是一个 JavaScript 函数库,没有什么特别的。...毕竟 jQuery 知识 JavaScript 编写函数库而已,有些功能 jQuery 没有封装,则还需要通过自己写原生 JavaScript 来实现。 5、为什么要学 jQuery?...3、jQuery对象.val();表示获取该对象 value 属性值; 4、jQuery对象.val("值");表示设置该对象 value 属性值; 四、页面加载事件 1、DOM中页面加载事件...特点:不是整个页面的所有元素,而是页面基本元素加载完后就执行,所以比使用 load 方式快一些。...$ 也可以换成 jQuery。 特点:不是整个页面的所有元素,而是页面基本元素加载完后就执行,所以比使用 load 方式快一些。

1.6K40

使用原生 JavaScript页面加载完成后处理多个函数

网页中 JavaScript 脚本运行是需要通过事件去触发。一般做法就是在网页中,直接编写几个函数,有的在代码被加载时候就被浏览器处理,或者使用类似下面的代码来触发实现函数相关功能。...因为下面的 HTML 元素还没有加载出来,head 中处理这部分 HTML 元素脚本已经被执行了。...JavaScript 正确使用方法应该是 脚本与 HTML 元素分离、当页面加载完成之后再去执行。本文就来讲解如何使用原生 JavaScript 来实现。...前面说过 window.onload 事件加载缺陷是只能在页面使用一次。而使用监听器方法,就可以监听为 window onload 事件分别加载多个函数了。...这个函数使用方法也比较简单,把它放在 JavaScript 最顶部,然后在下面编写功能函数,如果需要将某个功能函数使用这种方法加载,就可以把函数名作为参数调用这个自定义 addLoadListener

2.7K20

网站建设(二)通用--页面加载loading效果

撇开如何优化加载资源不谈,在页面加载,不论是有过多加载资源,还是有一些提前处理逻辑。这一过程可能不希望用户看到,显示一个友好loading会比较好一点。...当页面处理完毕后,再将loading移除。 要想实现这个效果,首先要明白一个网页从加载(loading效果出现),到完全加载完成(loading效果消失)整个过程。也就是何时出现,何时消失。...当然不对啦,感兴趣可以试验一下。这时候body还没有渲染,没办法获得到网页中任何元素,load效果无法出现。 也就是说需要渲染完页面元素以后,显示loading才是正确选择。...2)监听 iframe onload事件,当 iframe 加载完成,移除 loading 效果。...,第一次加载页面的时候,有很长时间空白(你如果打不开,应该能猜到是什么原因)。

2.1K20

NProgress.js - 前端全站进度条插件 - 给你网站添加一个加载进度条

正巧前几天发现因为网站带宽原因,一些页面加载会花一些时间,页面没有任何动静仿佛会让人浏览体验变差,因为太穷无奈只有在不花钱情况下提升一点点浏览体验(不知道是不是因为我强迫症原因),这时候给网站添加一个加载进度条...官网地址 Github项目地址 0x02 安装插件 使用NProgress需要先引入1.8及以上版本jQuery jQuery官网 官方给出安装方法有下面几种: NPM npm install -...pjax加载动画,我们先把它注释掉 然后把上面提到方法与对应pjax事件绑定 完成了与pjax绑定,接下来是第一次加载页面加载进度条,在任意位置插入script标签及以下JavaScript...,所以我们自己写一套连缀触发事件 这里参考jQueryajax全局事件: jqueryajax全局事件, 会在任意一个ajax请求执行时候触发,ajax提供了6个全局事件函数,会被页面中所有的ajax...bug心里很不是舒服,所以如果有前端大佬请务必联系我帮助我修复,小弟必有重谢 总体效果参考我现在博客,个人认为在加载页面的时候看着进度条一点一点加载还是比干等着要舒服多。

4.6K20

CSS3loading制作,让页面加载不再单调

页面的loading效果一直都是个比较重要制作,往往一个好加载效果可以有效提升用户体验。而实际开发中,loading效果具体该如何制作?前端工程师又会有哪些特殊技能呢?...换句话说,CSS3效果只有想不到,但是没有做不到。下图就是一个开发中常用到loading效果展示。 ?...1)CSS3圆角 主要功能是为标签添加圆角样式,有如下属性: border-radius : none | percent; none代表是不设置圆角,percent表示可以使用百分数实现圆角设置...在本例中主要使用是旋转,用于实现圆环变化效果。...其主要使用方式如下: animation: fadeOut 1s linear 0.2s infinite; 上述代码中,属性从左往右依次代表是:动画名称(由keyframe定义)、动画时间、动画速度曲线

1.9K90

JavaScript 使用 for 循环出现问题

有一些项目组在定位问题时候发现,在使用 “for(x in array)” 这样写法时候,在 IE 浏览器下,x 出现了非预期值。...事实上,主要 JavaScript 框架(比如 jQuery、Underscore 和 Prototype 等等)都有安全和通用 for-each 功能实现。...有一种粗暴解决办法: for (name in object) { if (object.hasOwnProperty(name)) { .... } } 还有人提到了使用 for(var i=0;i...<length;i++) 类似这样循环问题,因为 JavaScript 没有代码块级别的变量,所以这里 i 访问权限其实是所在方法。...使用 JavaScript 1.7 中引入 “let”可以解决这个问题,使 i 成为真正代码块级别的变量: for(let i =0; i < a.length; i++) 最后,在 Google

3.9K10

awesome-javascript-cn

官网 存储 store.js:为所有浏览器封装了 LocalStorage,而没有使用 cookies 和 flash。隐秘地使用 localStorage、globalStorage 和用户数据。...官网 progress.js:为页面任何对象创建和管理进度条。官网 progressbar.js:用 SVG path 动画制作、漂亮和响应式进度条。官网 pace:自动向你网站添加一个进度条。...官网 chardin.js:简单应用遮罩层介绍。官网 pageguide:使用 jQuery 和 CSS3 web 页面元素交互引导库。...官网 滚动 scrollMonitor:滚动发生,可以监听元素、简单、快速 API。官网 headroom:除非你需要显示页面头部(header),否则将隐藏它,以腾出页面头部空间。...官网 菜单 jQuery-menu-aim:当用户光标放在特定下拉菜单项触发事件。可制作响应式、大数据量下拉菜单,如 Amazon

10.7K80

使用pace.js美化你网站加载进度条

前言 最近做网站体验优化时候突然发现一个好东西,pace.js(加载进度条插件),gzip之后只有几kb, 简单好用,特地分享出来,也作为自己一个学习总结。...pace.js介绍 pace.js是一个自动加载页面进度栏小插件,它可以自动监视您Ajax请求,事件循环滞后,文档就绪状态以及页面元素来确定进度。...,当然我们也可以很方便基于它去修改成更加定制化加载进度样式....,表明正在执行javascript 可以通过相同名称配置选项分别配置或禁用它们。...4.元素 呈现到屏幕上元素是我们确定页面呈现一种方法。如果我们想使用该信息源(根本不需要),请指定一个或多个选择器。

2.4K30

「首席架构师推荐」一系列很棒浏览器端JavaScript库资源

NProgress - 用于Ajax'y应用程序超薄进度条。 Spin.js - 旋转活动指标。 progress.js - 为页面每个对象创建和管理进度条。...nanobar - 非常轻量级进度条没有jQuery。 PageLoadingEffects - 使用SVG动画显示新内容现代方式。 SpinKit - 使用CSS动画加载指示符集合。...focusable - 设置聚焦于DOM元素聚光灯,将叠加层添加到页面的其余部分。 通知 iziToast - 优雅,响应灵活,轻量级通知插件,没有依赖关系。...滚动 scrollMonitor - 滚动监视元素简单快速API。 eadroom - 给你页面一些空间。隐藏您标题,直到您需要它。...shuffle-images - 以创造性方式改变图像最简单方法 smoothState.js - 使用jQuery进行不显眼页面转换。

6.6K21
领券