js中常用方法以及document.readyState 判断页面是否加载完成 complete和interactive

JavaScript014

js中常用方法以及document.readyState 判断页面是否加载完成 complete和interactive,第1张

js中常用方法以及document.readyState 判断页面是否加载完成 complete和interactive

传回XML 文件资料的目前状况。   基本语法 intState = xmlDocument.readyState  说 明 这个属性是只读的,传回值有以下的可能: 0-UNINITIALIZED:XML 对象被产生,但没有任何文件被加载。 1-LOADING:加载程序进行中,但文件尚未开始解析。 2-LOADED:部分的文件已经加载且进行解析,但对象模型尚未生效。 3-INTERACTIVE:仅对已加载的部分文件有效,在此情况下,对象模型是有效但只读的。 4-COMPLETED:文件已完全加载,代表加载成功。     范 例 alert("The readyState property is " + xmlDoc.readyState)

1.窗口关闭时执行的函数 window.onbeforeunload = function(){}

2.页面加载情况判断document.readyState值可以是complete和interactive

function document.onreadystatechange() { if(document.readyState=="complete") alert(document.readyState)}

或者:

document.onreadystatechange = init

function init() {

if(document.readyState=="complete") {.........}

}

3.屏蔽右键功能和严禁选中操作

//document.oncontextmenu=new Function("event.returnValue=false")

//document.onselectstart=new Function("event.returnValue=false")

4.鼠标位置判断

window.event.y和window.event.x //x,y是鼠标相对于当前浏览器的位置

window.event.screenY和window.event.screenX //screenX,screenY是相对于用户显示器的位置

window.event.clientY和window.event.clientX //clientX, clientY是鼠标当前相对于网页的位置,

window.event.offsetY和window.event.offsetX //offsetX, offsetY是鼠标当前相对于网页中的某一区域的位置,当鼠标位于页面中这一区域的左上角时offsetX=0, offsetY=0;

5.窗口大小判断

document.documentElement.scrollWidth和document.documentElement.scrollHeight //获取窗口的宽和高

6.返回值

window.event.returnValue="真的要关闭吗" //弹出一个确认信息,确认事件是否要执行

return confirm("真的要关闭吗") //两个是一样的功能

7.获取随机数 parseInt(Math.random()*100) //获取1至100之间的随机数

用还是这个问题

刚刚不是给你回复了么?

complete 属性,IE是根据图片是否显示过来判断,就是说当加载的图片显示出来后,complete 属性的值才为 true ,否则一直是 false ,和以前是否加载过该张图片没有关系,即和缓存没有关系!但是其它浏览器表现出来的确不一样,只要以前加载过该图,浏览器有缓存,complete 就为 true ,这和IE的 readyState 属性的表现一致!

我们可以对加载的 JS 对象使用 onload 来判断(js.onload),此方法

Firefox2、Firefox3、Safari3.1+、Opera9.6+ 浏览器都能很好的支持,但 IE6、IE7 却不支持。曲线救国 —— IE6、IE7

我们可以使用 js.onreadystatechange 来跟踪每个状态变化的情况(一般为 loading

、loaded、interactive、complete),当返回状态为 loaded 或 complete 时,则表示加载完成,返回回调函数。

对于 readyState 状态需要一个补充说明:

1.在 interactive 状态下,用户可以参与互动。

2.Opera 其实也支持 js.onreadystatechange,但他的状态和

IE 的有很大差别。

代码如下:

<script>

function include_js(file) {

var _doc = document.getElementsByTagName('head')[0]

var js = document.createElement('script')

js.setAttribute('type', 'text/javascript')

js.setAttribute('src', file)

_doc.appendChild(js)

if (!/*@cc_on!@*/0) { //if not IE

//Firefox2、Firefox3、Safari3.1+、Opera9.6+ support js.onload

js.onload = function () {

alert('Firefox2、Firefox3、Safari3.1+、Opera9.6+ support js.onload')

}

} else {

//IE6、IE7 support js.onreadystatechange

js.onreadystatechange = function () {

if (js.readyState == 'loaded' || js.readyState == 'complete') {

alert('IE6、IE7 support js.onreadystatechange')

}

}

}

return false

}

include_js('http://www.planabc.net/wp-includes/js/jquery/jquery.js')

</script>