作者neversay (子不語)
看板Ajax
標題Re: [問題] ajax 與 jquery 的使用
時間Sun Dec 21 01:52:08 2008
※ 引述《neversay (子不語)》之銘言:
: <script>
: var f = function(){//do something};
: f();
: $().ready(f);
: </script>
: 這樣就能動作了,但是我認為這不是一個好解法,我認為jQuery應該要對ready事件
: 觸發的時機與scope做個更動,在ajax讀取child.html完畢時,要觸發 child.html的
: ready事件,且ready事件影響範圍僅有child.html之內。
: 目前正在想能不能在$.ajax的option裡面 success:function這個參數上下手腳,
: 因為在success時已經有了data可以操作,不知道有沒有辦法對這個data下達.
: trigger('ready')來觸發子頁面的ready事件呢?
: 有誰有試過的?
找到一個不是很完美的方法了。
在$.ajax的ajaxOptions裡面把success拿來呼叫function(data){jQuery.ready();}
這樣就可以再次呼叫ready事件發生,讓整份ajax來的新文件可以觸發一次ready,
讓他們做該做的事,但是這個jQuery.ready()也會同時觸發母網頁的ready事件,
造成我最不想要的多重觸發 = =;;
我想最徹底的解決方法應該是分析ajax來的網頁,把所有子網頁的$().ready(fn)
裡面的fn抓出來直接呼叫,才是正確的方法。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.21.8
1F:→ neversay:修正,在success裡面呼叫jQuery.ready()不會波及母網頁 12/21 10:51
2F:→ neversay:剛剛測試過的結果 12/21 10:51