`

js onloading 效果

阅读更多
//加载状态为complete时移除loading效果
function completeLoading() {
    if (document.readyState == "complete") {
        var loadingMask = document.getElementById('loadingDiv');
        loadingMask.parentNode.removeChild(loadingMask);
    }
}

function onLoading(){
	console.log("test onLoading...");
	//获取浏览器页面可见高度和宽度
	var _PageHeight = document.documentElement.clientHeight,
	    _PageWidth = document.documentElement.clientWidth;
	//计算loading框距离顶部和左部的距离(loading框的宽度为215px,高度为61px)
	var _LoadingTop = _PageHeight > 61 ? (_PageHeight - 61) / 2 : 0,
	    _LoadingLeft = _PageWidth > 215 ? (_PageWidth - 215) / 2 : 0;
	//在页面未加载完毕之前显示的loading Html自定义内容
	var _LoadingHtml = '<div id="loadingDiv" style="position:absolute;left:0;width:100%;height:' + _PageHeight + 'px;top:0;background:#f3f8ff;opacity:1;filter:alpha(opacity=80);z-index:10000;"><div style="position: absolute; cursor1: wait; left: ' + _LoadingLeft + 'px; top:' + _LoadingTop + 'px; width: auto; height: 57px; line-height: 57px; padding-left: 50px; padding-right: 5px; background: #fff url(Image/loading.gif) no-repeat scroll 5px 10px; border: 2px solid #95B8E7; color: #696969; font-family:\'Microsoft YaHei\';">页面加载中,请等待...</div></div>';
	//呈现loading效果
	document.write(_LoadingHtml);

	//window.onload = function () {
//	    var loadingMask = document.getElementById('loadingDiv');
//	    loadingMask.parentNode.removeChild(loadingMask);
	//};

	//监听加载状态改变
	document.onreadystatechange = completeLoading;
}

 

2.在Ajax中调用即可

var strURL = "loginServlet?loginId="+loginId+"&password="+password;
	 var self = this;
	    if (window.XMLHttpRequest) {
	        self.xmlHttpReq = new XMLHttpRequest();
	    }
	    else if (window.ActiveXObject) {
	        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
	    }
	    
	   
	    
	    self.xmlHttpReq.open('GET', strURL, true);
	    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	    self.xmlHttpReq.onreadystatechange = function() {
	        if (self.xmlHttpReq.readyState == 4 ) {
	        	if(self.xmlHttpReq.status==200){
	        		var result = self.xmlHttpReq.responseText;
	        		var a="OK";
	        		if (result==a){
	        			onLoading();//here to use
	        			window.location.href=responseURL;
	        		}else{
	        			responseMsg.innerHTML = result;
	        		}
	        		
	        	}else{
					alert('Ajax Request Error.');
				}
	        }
			
	    }
	    self.xmlHttpReq.send(null);

 

参考:

http://qubernet.blog.163.com/blog/static/1779472842014510392573/

分享到:
评论

相关推荐

    vuerouter切换时loading效果实现

    本文将详细探讨如何在Vue Router中实现路由切换时的loading效果。 首先,我们需要确保已经安装了Vue Router,并在项目中配置好基本的路由。如果尚未安装,可以使用npm或yarn进行安装: ```bash npm install vue-...

    原生JS实现LOADING效果

    纯文本loading效果,可以自己定义颜色和速度 代码如下: /** Loading animation  * Created by 黑と白の印記 on 15/03/11.  */   function loading(element,lightColor,darkColor,speed,callback){  if(!...

    Extjs的loading效果

    ExtJS的loading效果是指当数据正在后台加载或页面正在处理时,显示的一种视觉提示,告知用户系统正在进行工作。这通常是一个旋转的指示器或文字提示,如“正在加载...”。这种效果可以避免用户在等待过程中感到迷茫...

    基于jQuery实现的myProgress.js加载loading动画进度条效果

    在本文中,我们将深入探讨如何使用jQuery库来创建一个名为`myProgress.js`的自定义加载loading动画进度条效果。进度条是用户界面中的一个重要元素,它可以为用户提供关于任务完成状态的实时反馈,特别是在处理耗时...

    页面加载的Loading效果

    在网页设计中,"页面加载的Loading效果"是一种常见的用户体验优化策略,旨在提供一个视觉反馈,让用户知道网站正在加载内容。这种效果通常出现在页面内容完全加载之前,为用户展示一个动态图标或进度条,减少用户的...

    jquery+CSS3按钮加载loading动画效果

    $('#loading-btn').on('click', function(e) { e.preventDefault(); // 阻止按钮默认行为 $(this).addClass('disabled'); // 添加禁用样式 $('.loading').show(); // 显示加载动画 // 执行你的操作,比如AJAX...

    jQuery8种不同的懒加载loading效果

    本文将深入探讨jQuery中的8种不同的懒加载loading效果及其相关知识点。 一、基本概念 懒加载是一种优化策略,它只在用户滚动到可视区域时才加载图像或特定内容,而不是一次性加载整个页面。这样可以减少初始页面...

    常用CSS跟JS效果整理

    3. **JavaScript(JS)效果**:JS是一种脚本语言,用于增加网页的交互性和动态功能。在描述中提到的JS效果可能包括: - **图片轮播**:使用JS可以创建动态的图片轮播效果,用户可以向前或向后切换图片,甚至添加...

    js加载等待效果,原理点击后创建层,onclick事件触发

    JavaScript加载等待效果是一种常见用户体验优化技术,用于在数据加载期间向用户展示反馈,告知他们系统正在处理请求。这种效果通常会在用户点击按钮或链接后显示,直到后台数据完全加载完毕。下面将详细介绍实现这一...

    HTML5 Canvas实现的loading图标闪烁效果源码.zip

    在这个“HTML5 Canvas实现的loading图标闪烁效果源码”中,我们可以深入探讨如何利用Canvas API创建动态加载指示器,即我们常说的loading图标。 首先,我们需要了解Canvas的基本结构。在HTML中,我们通过`&lt;canvas&gt;`...

    基于jQuery实现的myProgress.js加载loading动画效果特效代码

    【基于jQuery实现的myProgress.js加载loading动画效果特效代码】是一种使用JavaScript库jQuery创建的动态加载效果插件。jQuery是一个广泛使用的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互,...

    jquery页面加载效果

    "jQuery页面加载效果"是指利用JavaScript库jQuery实现的动态加载动画,它能够以吸引人的视觉方式展示网页内容正在加载的过程,使用户在等待期间不会感到乏味。这种效果在现代网页设计中被广泛应用,尤其在内容分块...

    图片加载JS效果

    "图片加载JS效果"这个主题主要涉及HTML、JavaScript以及图片的动态处理技术。下面将详细解释这个话题中的关键知识点。 首先,HTML是网页的基础结构语言,用于定义网页的布局和内容。在HTML中,我们通常使用`&lt;img&gt;`...

    基于js的点击图标预览图片效果源码.rar

    JavaScript可以使用`onerror`事件处理函数来捕获并处理这些错误。 7. **性能优化**:考虑到用户体验,可能需要优化图片加载速度。这可以通过延迟加载(lazy loading)、使用WebP等高效图片格式、压缩图片大小等方式...

    vue实现图片加载完成前的loading组件方法

    除了使用 Vue 组件外,我们还可以使用纯 JS 代码来实现图片加载前的 Loading 效果。在这个例子中,我们使用 JavaScript 代码来加载图片,并监听图片的加载事件,以便在加载完成后替换 Loading 效果。 这篇文章分享...

    经典ajax.prototype.javascript实例-加载效果显示大图

    在上述代码中,我们假设有一个id为'loading'的元素用于显示加载效果,而id为'image'的元素用于显示大图。当请求开始时,显示加载效果;请求完成后,将响应数据(假设是图片URL)赋值给图片元素的src属性,从而显示大...

    loading-master.zip

    "loading-master.zip" 文件包含的就是一个基于 jQuery 开发的页面加载效果示例,它可以从 http://www.lovewebgames.com/jsmodule/loading.html 获取。jQuery 是一个广泛使用的 JavaScript 库,它简化了 DOM 操作、...

    loading-example.zip

    3. **JavaScript 事件监听**:为了在页面加载过程中显示和隐藏 loading 效果,需要监听页面的 `$(document).ready()` 和 `$(window).load()` 事件。`$(document).ready()` 在 DOM 加载完成后执行,而 `$(window)....

    Track Image Loading效果代码分析

    Track Image Loading效果代码分析主要关注的是在网页中加载图片时如何确保图片加载成功或失败时的回调函数能够稳定执行。在原生JavaScript中,`Image`对象提供了`onload`和`onerror`事件来监听图片加载状态,但是...

    jQuery按钮点击loading加载.zip

    为了创建一个简单的loading效果,可以使用关键帧动画(@keyframes): ```css #loading { display: none; /* 隐藏loading,当需要显示时通过JS改变 */ text-align: center; margin-top: 20px; } .loading-...

Global site tag (gtag.js) - Google Analytics