两种方法实现在HTML页面加载完毕后运行某个js

两种方法实现在HTML页面加载完毕后运行某个js

这篇文章主要介绍了通过两种方法实现在HTML页面加载完毕后运行某个js,需要的朋友可以参考下

js方法:

复制代码 代码如下:

<script type="text/javascript">

window.onload=function(){

var userName="xiaoming";

alert(userName);
}

</script>

以下为jQuery方法,需要引用jQuery文件。

复制代码 代码如下:

<script type="text/javascript">

$(document).ready(function(){

var userName="xiaoming";

alert(userName);
});

</script>

或者其简写

复制代码 代码如下:

$(function(){
var userName="xiaoming";
alert(userName);
});

当dom加载完就可以执行(比window.onload更早)。在同一个页面里可以多次出现.ready()

PS:两者的主要区别

window.onload:

当一个文档完全下载到浏览器中时,才会触发window.onload事件。这意味着页面上的全部元素对js而言都是可以操作的,也就是说页面上的所有元素加载完毕才会执行。这种情况对编写功能性代码非常有利,因为无需考虑加载的次序。、

$(document).ready{ }:

会在DOM完全就绪并可以使用时调用。虽然这也意味着所有元素对脚本而言都是可以访问的,但是,并不意味着所有关联的文件都已经下载完毕。换句话说,当HMTL下载完成并解析为DOM树之后,代码就会执行。

举一个例子:


设有一个表现图库的页面,这种页面中可能会包含许多大型图像,我们可以通过jQuery隐藏、显示或以其他方式操作这些图像。如果我们通过onload页
面设置界面,那么用户在能够使用这个页面之前,必须要等到每一幅图像都下载完成。更糟糕的是,如果行为稍微添加给哪些具有默认行为的元素(比如链接),那
么用户的交互可能会导致意想不到的结果。然而当我们试用$(document).ready(){
}进行设置时,这个界面就会更早地准备好可用的正确行为。

使用$(document).ready(){ }一般来说都要优于试用onload事件处理程序,但必须要明确一点的是,因为支持文件可能还没有家在完成,所以类似图像的高度和宽度这样的属性此时不一定有效。

注:用把js放在页面底部的方法以及运用defer="defer" 的方法都是会出现问题的。最好使用上面的函数!

时间: 2024-08-02 02:39:27

两种方法实现在HTML页面加载完毕后运行某个js的相关文章

在HTML页面加载完毕后运行某个js

js <script type="text/javascript"> window.onload=function(){ //执行} </script> jQ <script type="text/javascript"> $(document).ready(function(){ //执行}); $(function(){ //执行}); </script> 原文地址:https://www.cnblogs.com/

页面加载完毕执行多个JS函数

通常我们需要在打开页面时加载脚本,这些脚本必须在页面加载完毕后才可以执行,因为这时候DOM才完整,可以利用window.onload确保这一点,如:window.onload=firstFunction;这脚本的意思是在页面完毕后执行firstFunction函数,但当有很多个函数需要在页面加载时执行呢?可能有人说可以这样:window.onload=firstFunction;window.onload=secondFunction; 但这样的话只会执行secondFunction函数. Si

页面加载完毕后,指定文本框获得焦点,闪动光标。

这不是什么难点技术,主要是对于页面中加入了一些服务器端控件,尤其是ajax控件时,document ready的时候,一些控件可能还没初始化完成,导致focus失效. 我搞了一个笨办法,适用于以上情况: $(function () { var curIntervalId = setInterval(function () { if (document.activeElement.id != "<%=txtOrderID.ClientID %>") { $("#&l

页面加载完成后执行的JS

$(document).ready(function() { alert("[email protected]2121212");}); window.onload = function(){ alert("[email protected]");} function init(){alert("[email protected]");}; </script> </head> <body >

js中页面加载完成后执行的几种方式及执行顺序

在js和jquery使用中,经常使用到页面加载完成后执行某一方法.通过整理,大概是五种方式(其中有的只是书写方式不一样). 1:使用jQuery的$(function){}; 2:使用jquery的$(document).ready(function(){});前两者本质上没有区别,第1种是第2种的简写方式.两个是document加载完成后就执行方法. 3:使用jQuery的$(window).load(function(){}); 4:使用window.onload = function(){

大坑啊!!!关于页面加载完毕事件!!!

这个坑导致我页面加载完毕后获取元素高度有问题,获取不正确或者是很小才20px,元素本身高度几百,困扰了我这个新手几天.原因就是js原生的onload事件和jq的ready事件的区别. 1.执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行.         $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕. 2.编写个数不同 window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个 

关于 第三方接口支付的时候 采用post提交的方式,有两种 一种是通过 curl来进行,一种是通过js当页面加载完后跳转

这是第一种.通过javascript页面加载完后,对表单采用 post方式提交给 第三方接口----- echo <<<_END<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.

页面加载完毕相关信息淡入效果

前言: 年关将至,公司一部分同事已经回老家了,虽然过年不回去,但想到明天上完班就放假了内心多少有点激动.工作上的事情不要紧的已经没心情再看了,加之今天领导不在 哈哈哈... 搞点自己的爱好! 看bootstrap的优站精选时看到了一个页面加载完毕时的一个淡入效果(http://www.mikeinghamdesign.com/),于是... 效果图: 实现思路: 此处实现主要用外边距margin-top属性和透明度opacity属性: 1.淡入区块初始设置一定上外边距,透明度完全透明: 2.页面

新手遇到的问题:Easy UI的对话框老是在页面加载完成后自动弹出

由于是第一次接触Easy UI,还不是非常熟悉,尝试了一下对话框功能,还是很不错的,但问题是页面加载完成后,所有的对话框都自动弹出来了,百度了好久,也没有具体说明白的,貌似别人都没有这个问题哦 以下是Easy UI 官方提供的示例(页面加载完成后对话框自动弹出) <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Basic Dialog - jQuery E