$(function(){alert("hei");})(); (function(){alert("hei");})();

plglenn15 2010-02-05 11:25:30
(function(){alert("hei");})();


$(function(){alert("hei");})();
$(document).ready(function(){alert("hei");});

蓝色比红色有什么好处?
蓝色可以添加事件,是jquery的方法,红色不行,这样理解对吗?
...全文
249 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq546937127 2010-02-06
  • 打赏
  • 举报
回复
不知道小弟说的对不对。
蓝色的
$(function(){alert("hei");})();
$(document).ready(function(){alert("hei");});

都是jquery类库封装的方法。其实$就相当于jQuery,你完全可以这样写jQuery(function(){alert("hei");})();

(function(){alert("hei");})();
$(function(){alert("hei");})(); 执行上基本上没什么差别,都相当于你声明了一个匿名函数并立即执行。这样做是为了简洁的定义一个匿名函数,然后执行.当初始化时,如果要无条件执行一个函数,如果先定义,然后再调用,首先,函数的名称没有必要,只是调用时用得到.其次,写起来比较麻烦,看起来也不简捷.

然后
$(document).ready(function(){alert("hei");}); ,正如1楼那位仁兄所说,这个作用是当页面的DOM模型加载完后执行指定的匿名函数,这时,页面所有的DOM元素都可以访问了。
有下面这样一个例子:

<html>
<head>
<script>
(function(){document.getElementById('text1').value = '春哥'})(); //浏览器从上到下解析html,这是因为text1这个标签还没有被解析,所有这里会提示undefined。
$(document).ready(document.getElementById('text2').value = '曾哥'});//因为所有的dom元素都加载完了才执行这个函数,所以这里能正常执行
</script>
</head>
<body>
<input id="text1" type=text value=""/>
<input id="text2" type=text value=""/>
</body>
</html>



阿非 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用楼主 plglenn15 的回复:]
(function(){alert("hei");})();


$(function(){alert("hei");})();
$(document).ready(function(){alert("hei");});

蓝色比红色有什么好处?
蓝色可以添加事件,是jquery的方法,红色不行,这样理解对吗?
[/Quote]

蓝色比红色有什么好处?

蓝色的是 jQ 的写法,意思是 在 document 对象 加载后执行的函数句柄, 这里的

$(function(){}) 等同于 $(document).ready(function(){});

jQ 的 $() 优势 在于 dom 对象已经存在 ,但不等待dom对象加载结束 就会执行。


红色是标准的 EcmaScript 中匿名函数的写法

之前你也问过的, 它会声明后 立即执行
qq546937127 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 qq546937127 的回复:]
不知道小弟说的对不对。
蓝色的
$(function(){alert("hei");})();
$(document).ready(function(){alert("hei");});
都是jquery类库封装的方法。其实$就相当于jQuery,你完全可以这样写jQuery(function(){alert("hei");})();

(function(){alert("hei");})();与
$(function(){alert("hei");})();执行上基本上没什么差别,都相当于你声明了一个匿名函数并立即执行。这样做是为了简洁的定义一个匿名函数,然后执行.当初始化时,如果要无条件执行一个函数,如果先定义,然后再调用,首先,函数的名称没有必要,只是调用时用得到.其次,写起来比较麻烦,看起来也不简捷.

然后
$(document).ready(function(){alert("hei");});,正如1楼那位仁兄所说,这个作用是当页面的DOM模型加载完后执行指定的匿名函数,这时,页面所有的DOM元素都可以访问了。
有下面这样一个例子:HTML code<html><head><script>
(function(){document.getElementById('text1').value='春哥'})();//浏览器从上到下解析html,这是因为text1这个标签还没有被解析,所有这里会提示undefined。$(document).ready(document.getElementById('text2').value='曾哥'});//因为所有的dom元素都加载完了才执行这个函数,所以这里能正常执行</script></head><body><inputid="text1" type=textvalue=""/><inputid="text2" type=textvalue=""/></body></html>



[/Quote]
纠正一下我的错误,
1
$(document).ready(document.getElementById('text2').value = '曾哥'});//
改成
$(document).ready(function(){document.getElementById('text2').value = '曾哥'});

2
关于$(function(){alert("hei");})();9楼说的是正确的。
jenny0810 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 qq546937127 的回复:]
不知道小弟说的对不对。
蓝色的
$(function(){alert("hei");})();
$(document).ready(function(){alert("hei");});
都是jquery类库封装的方法。其实$就相当于jQuery,你完全可以这样写jQuery(function(){alert("hei");})();

(function(){alert("hei");})();与
$(function(){alert("hei");})();执行上基本上没什么差别,都相当于你声明了一个匿名函数并立即执行。这样做是为了简洁的定义一个匿名函数,然后执行.当初始化时,如果要无条件执行一个函数,如果先定义,然后再调用,首先,函数的名称没有必要,只是调用时用得到.其次,写起来比较麻烦,看起来也不简捷.

然后
$(document).ready(function(){alert("hei");});,正如1楼那位仁兄所说,这个作用是当页面的DOM模型加载完后执行指定的匿名函数,这时,页面所有的DOM元素都可以访问了。
有下面这样一个例子:HTML code<html><head><script>
(function(){document.getElementById('text1').value='春哥'})();//浏览器从上到下解析html,这是因为text1这个标签还没有被解析,所有这里会提示undefined。$(document).ready(document.getElementById('text2').value='曾哥'});//因为所有的dom元素都加载完了才执行这个函数,所以这里能正常执行</script></head><body><inputid="text1" type=textvalue=""/><inputid="text2" type=textvalue=""/></body></html>



[/Quote]learning
sohighthesky 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 plglenn15 的回复:]
蓝色比红色有什么好处?
[/Quote]
一样的,$(function(){}) jquery中的方法都会等待document 在ready之后才执行,这两个操作相等
plglenn15 2010-02-05
  • 打赏
  • 举报
回复
《html》
abc
《body》
《/body》
<script>
ready()

《html》
in u opinion =>


<script>
ready()

《html》
abc
《body》
《/body》

《html》
plglenn15 2010-02-05
  • 打赏
  • 举报
回复
蓝色比红色有什么好处?
wiki14 2010-02-05
  • 打赏
  • 举报
回复
有了$(document).ready(),你可以在windows加载之前,就预先加载你想要实现某个功能的代码。
这样的话,当你浏览一个运用了jQuery的网站,一打开页面就会看到jQuery效果,没有任何延迟。
你可以这么理解:
如果你有个页面要加载的东西太多了,可能导致很久才看到js的效果。
$(document).ready()函数里面的内容将会在整个页面其他内容下载之前预先加载。

xray2005 2010-02-05
  • 打赏
  • 举报
回复
LZ,你看看JQUERY基础吧JQUERY基础

$(function() {
// code to execute when the DOM is ready
});

$(document).ready(callbac)的缩写。
plglenn15 2010-02-05
  • 打赏
  • 举报
回复
$(document).ready 的好处就在这里,它只等待 DOM 加载完成,而不是页面
有意思,能深入么?
plglenn15 2010-02-05
  • 打赏
  • 举报
回复
$(function(){alert("hei");})();   
获取的什么对象?
wiki14 2010-02-05
  • 打赏
  • 举报
回复
$(document).ready 的好处就在这里,它只等待 DOM 加载完成,而不是页面。

你可以分别写几个函数,调用,看看执行结果出来的顺序。

别的没看出来什么好处。
xray2005 2010-02-05
  • 打赏
  • 举报
回复
$(document).ready(function(){alert("hei");});


jquery使用 $()来获取对象。
plglenn15 2010-02-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wiki14 的回复:]
jquery的ready是指在页面的DOM模型加载完后执行指定的函数。

[/Quote]
蓝色比红色有什么好处?
有什么不同,??
wiki14 2010-02-05
  • 打赏
  • 举报
回复
jquery的ready是指在页面的DOM模型加载完后执行指定的函数。
代码转载自:https://pan.quark.cn/s/11d565366452 【USB转I2C/IIC适配器上位机应用程序】是一种针对I2C(Inter-Integrated Circuit)通信协议而构建的工具,其通过USB端口将个人计算机转变为能够与I2C设备进行交互的控制器。该适配器使开发人员与工程师能够便捷地对遵循I2C协议的芯片执行读取和写入任务,因此在硬件构建和测试阶段能够显著提升效率,对于核实I2C接口芯片的工作性能具有特别的价值。 I2C协议是由飞利浦(现NXP半导体)于1980年代初创立的一种双线式串行总线,其目的是用于连接微控制器及其他外围设备。该协议仅需两条信号线(SDA - 数据线,SCL - 时钟线)即可完成多设备间的通信,大幅度削减了电路板上的布线需求,从而降低了生产成本。I2C协议提供多种速度等级,涵盖标准模式(100kbps)、快速模式(400kbps)以及高速模式(3.4Mbps),旨在满足不同场景下的应用要求。 Ginkgo USB转I2C适配器是这项技术的具体应用实例,它提供了一个物理接口,用于将USB端口转换为I2C端口。适配器内部装配有一个微控制器单元,该单元负责处理从USB到I2C的信号转换,并且通过USB线路向计算机传输信息,同时接收来自计算机的指令以操控I2C总线。这种设计使用户无需具备深厚的硬件知识,仅需借助上位机软件即可实现对I2C设备的操控。 Ginkgo I2C Adapter Classic是与该适配器相配套的软件,通常包含以下几项核心功能: 1. 设备识别:自动检测并建立与USB转I2C适配器的连接。 2. 总线探查:扫描I2C总线上所连接的设备地址,有助于准确定位设备的位置。 3. 读写指令...

87,987

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧