常用的window.onload等 也有执行顺序影响
在最近的项目中,我根据网页的需求,而因为我用了vue.js框架,所以用到这样的结构,不仅直接在javascript中直接编写了js代码,还通过import引入了其他的js文件,这些js文件一部分是通过原生js写的,一部分又是通过jquery写的,很不规范,但是我想,这样直接引入也是可以达到预期效果,那么解决这次的问题,下一次就要注意了。但是在测试中,我就发现了一系列的问题,比如impo
在最近的项目中,我根据网页的需求,而因为我用了vue.js框架,所以用到<template><javascript><style>这样的结构,不仅直接在javascript中直接编写了js代码,还通过import引入了其他的js文件,这些js文件一部分是通过原生js写的,一部分又是通过jquery写的,很不规范,但是我想,这样直接引入也是可以达到预期效果,那么解决这次的问题,下一次就要注意了。
但是在测试中,我就发现了一系列的问题,比如import引入的谷歌地图js文件请求的时间较长,但仍需要在其加载完成之后,才会去执行视频的js文件,这样导致地图加载完成之前,都无法对视频的某些功能进行操作;刚巧,视频和地图都是采用的原生js写的,而且习惯的,都用了window.onload;而一般的jquery文件,则习惯使用了$(function(){});而直接写在vue 页面里面的javascript部分中,则用了ready();
经过测试,直接写在vue 页面里面的javascript部分中的js代码会首先执行,姑且如css一样,称呼其为内联吧;
以下内容转自 http://www.jb51.net/article/21628.htm ;作者mdxy-dxy
$(document).ready(function(){})等于$(function(){});
window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。
$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。
window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个 ;
$(document).ready()可以同时编写多个,并且都可以得到执行 ;
$(window).load(function(){...})和body.onload()它们都需要等到页面的所有内容
加载完毕才执行,但是如果当网速比较慢的时候,加载一个页面往往需要较长的时间(几秒到十几秒不等,甚至更长...),所以我们经常
会遇到页面还没有完全加载完毕而用户已经在操作页面了这种情况,这样页面表现出来的效果就跟我们预期的效果不一样了,
所以在这里我推荐使用$(document).ready(function(){}),或简写为$(function(){}),因为他会在页面的dom元素加载完毕后就执行,
而无需等到图片或其他媒体下载完毕.
更多推荐
所有评论(0)