作者poototo (poototo)
看板Ajax
标题Re: [问题] 请教Jquery的document ready
时间Fri May 4 18:17:33 2012
不好意思,因为刚摸,范例码都拼拼凑凑,感觉有点虚 ^^;
一开始我script都放head,後来看到有说放body最後可以比较快
急着试效果,就没有特别统一,结果有些在head有些在body行中
code累积越多就开始出问题
LaPass说的果然有差
我所有Jquery物件都放body最後的script,不放ready也有跑出效果
另外一个问题是,我在Head引用js时,还遇到很诡异的情形
<script src="
http://code.jquery.com/jquery-latest.js"></script>
<script src="
http://code.jquery.com/jquery-latest.js"/>
尾巴tag的结束方式这两者我以为没差,结果有时一个不行?
※ 引述《LaPass (LaPass)》之铭言:
: ※ 引述《poototo (poototo)》之铭言:
: : <script>
: : $(document).ready(function(){...});
: : $('#myButton').click(function(){...});
: : </script>
: : ======================================================
: : 如上code,设定按钮的 click 事件那行不在 ready 中,myButton按下去仍然有效
: : 而UI的widget如 $('#myAccordion').accordion() 一定要用某个具名或匿名函数来启动
: : accordion()效果才真的跑出来
: : 所以疑问是,怎麽知道Jquery物件後面接的API方法是<script>中单独写出来就会执行?
: : Thx
: : 0504
: <script>
: $('#DIV1').XXXXXXXXXXX; // <= 挂掉,因为还还没读到DIV1
: $(document).ready(function()
: {$('#DIV1').XXXXXXXXXXX;}); //<=OK,因为ready会等DOM读取完後才执行
: </script>
: <div id=DIV1 ></div>
: <script>
: $('#DIV1').XXXXXXXXXXX; // <= OK
: $(document).ready(function()
: {$('#DIV1').XXXXXXXXXXX;}); //<=OK
: </script>
: javascript的原则,就是整页html档一行行读下来,读到哪里就执行到哪里。
: 如果有些东西要花点时间载入
: 那也可能会执行不到....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.120.39.178
1F:→ TonyQ:这是规格,script 一定要有结尾标签 05/04 19:32
2F:→ buganini:大概是因为parser要吃的,js code里面也不能出现 05/04 21:44
3F:→ buganini:"</script>" 一定要分开写成"</scr"+"ipt>"之类的 05/04 21:45
4F:→ buganini:照XML标准js code应该要放在CDATA里,可是以前没这种事 05/04 21:45
5F:→ buganini:只好认标签,总不能html parser还要内建js parser吧 05/04 21:46
6F:→ tyf99:html 在用 <xx></xx> 的时候 xml 都还没出生... 05/05 00:55
7F:推 s25g5d4:我是习惯遇到/就送他一个escape字元 就是变<\/script> 05/05 20:47