当我们在写代码的时候偶尔会出现执行方法在元素前面的情况,这时候我们需要先将页面内容加载出来,让方法进行等待;
常用方法有:
“window.onload = function () {}; ”与“$(document).ready(function () {}); =>简写 $(function(){});”
这两种方法存在一定的区别;
“window.onload = function () {}; ”:
1、必须等待网页全部加载完毕(包括图片等),然后再执行包裹代码
2、只能执行一次,如果第二次,那么第一次的执行会被覆盖
3、没有简写方式
$(document).ready(function () {}); =>简写 $(function(){});”:
1、只需要等待页面中的DOM结构加载完毕,就能执行包裹的代码
2、可以执行多次,第N次都不会被上一次覆盖
3、可以简写为 $(function(){});“”
<script>
/*$(function(){//此种为简写方法
$("#bd").attr("href","http://www.baidu.com");
})*/
$(document).ready(function(){//此种为完整写法
$("#bd").attr("href","http://www.baidu.com");
})
</script>
<body onload="t()">//onload使得页面首先加载,加载完毕后才会执行“t()”
<a id="bd">baidu</a>//此时创建了一个标签,但是没有引入地址,正常情况下我们可以在后面向元素中添加地址,如果添加在前面则会报错
</body>