$(document).ready(function() {});写与不写有什么区别

不写$(document).ready(function(){});,直接在<script></script>中写事件,方法可以吗?... 不写$(document).ready(function() {});,直接在<script></script>中写事件,方法可以吗? 展开
 我来答
八哥说科技
高粉答主

2019-08-16 · 分享科技资讯,共享科技生活
八哥说科技
采纳数:113 获赞数:78618

向TA提问 私信TA
展开全部

一、区别如下:

1、执行的时间不同:

$(document).ready(function() {})里的代码执行的时机实在document的内容都加载完毕才执行。

<script></script>中的代码随html文档的加载过程中就会开始执行。

2、程序稳健性不同:

$(document).ready(function() {})里的代码因为是文档完整加载后才执行,可以准确的操作需要操作的DOM元素。

script标签中的代码执行时,不能保证需要操作的dom元素已加载完成,用了当前还没加载过来的代码或者dom,那么就会报错。

二、直接在<script></script>中写事件也是可以的,但需要放到文档结构的最后,避免DOM元素加载未完成而报错。

扩展资料:

ready简单的写法:

$(function(){需要执行的代码});这种写法的效果与$(document).ready(function() {})是一样的,也是在文档加载完毕后执行。

js原生方式:

window.onload(); 在页面的DOM加载完成,所有的图片、子frame等所有的元素都加载完成的时候才会触发。

参考资料来源:百度百科-javascript

参考资料来源:百度百科-jQuery

以水丹75
推荐于2018-02-28 · TA获得超过575个赞
知道小有建树答主
回答量:567
采纳率:100%
帮助的人:422万
展开全部
$(document).ready 里的代码是在页面内容都加载完才执行的,你直接写到script标签里,当页面加载完这个script标签就会执行里边的代码了,如果你标签里执行的代码调用了当前还没加载过来的代码或者dom,那么就会报错,
当然如果你把script标签当到页面最后面那么就没问题了和ready差不多的效果
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式