方法回调:callback方法回调是指当某方法执行完成后,去自动执行指定的另一方法的过程.下面举两个代表性的例子,说说JS世界里的方法回调.
一 对JS脚本文件动态加载,当加载完成后,去回调一个函数
<script> <BR>/* js动态加载脚本库方法 */ <BR>function include_js(file) { <BR>var _doc = document.getElementsByTagName('head')[0]; <BR>var js = document.createElement('script'); <BR>js.setAttribute('type', 'text/javascript'); <BR>js.setAttribute('src', file); <BR>_doc.appendChild(js); <BR>if (!/*@cc_on!@*/0) { //if not IE <BR>//Firefox2、Firefox3、Safari3.1+、Opera9.6+ support js.onload <BR>js.onload = function () { <BR>// …你的代码逻辑 <BR>} <BR>} else { //IE6、IE7 support js.onreadystatechange <BR>js.onreadystatechange = function () { <BR>if (js.readyState == 'loaded' || js.readyState == 'complete') { <BR>// …你的代码逻辑 //加载Jquery脚本库,完成后,执行jquery里的方法 <BR>$("#div1").html("ok"); <BR>} <BR>} <BR>} <BR>return false; <BR>} //execution function <BR>include_js('http://img1.c2cedu.com/Scripts/jquery/jquery-1.4.2.min.js'); <BR></script>
二 动态加载IFRAME框架页,当加载完成后,去回调一个函数
<script> <BR>var iframe = document.createElement("iframe"); <BR>iframe.src = http://www.jb51.net; <BR>if (iframe.attachEvent) { <BR>iframe.attachEvent("onload", function () { // …你的代码逻辑 }); } else { <BR>iframe.onload = function () { <BR>// …你的代码逻辑 <BR>}; <BR>} <BR>document.body.appendChild(iframe); <BR></script>