方法回调: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>