JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)

方法回调:callback方法回调是指当某方法执行完成后,去自动执行指定的另一方法的过程.下面举两个代表性的例子,说说JS世界里的方法回调.
一 对JS脚本文件动态加载,当加载完成后,去回调一个函数


代码如下:

<script>
/* js动态加载脚本库方法 */
function include_js(file) {
var _doc = document.getElementsByTagName('head')[0];
var js = document.createElement('script');
js.setAttribute('type', 'text/javascript');
js.setAttribute('src', file);
_doc.appendChild(js);
if (!/*@cc_on!@*/0) { //if not IE
//Firefox2、Firefox3、Safari3.1+、Opera9.6+ support js.onload
js.onload = function () {
// …你的代码逻辑
}
} else { //IE6、IE7 support js.onreadystatechange
js.onreadystatechange = function () {
if (js.readyState == 'loaded' || js.readyState == 'complete') {
// …你的代码逻辑 //加载Jquery脚本库,完成后,执行jquery里的方法
$("#div1").html("ok");
}
}
}
return false;
} //execution function
include_js('http://img1.c2cedu.com/Scripts/jquery/jquery-1.4.2.min.js');
</script>

二 动态加载IFRAME框架页,当加载完成后,去回调一个函数


代码如下:

<script>
var iframe = document.createElement("iframe");
iframe.src = http://www.jb51.net;
if (iframe.attachEvent) {
iframe.attachEvent("onload", function () { // …你的代码逻辑 }); } else {
iframe.onload = function () {
// …你的代码逻辑
};
}
document.body.appendChild(iframe);
</script>

(0)

相关推荐

  • 判断iframe是否加载完成的完美方法

    复制代码 代码如下: var iframe = document.createElement("iframe"); iframe.src = "http://www.jb51.net"; if (!/*@cc_on!@*/0) { //if not IE iframe.onload = function(){ alert("Local iframe is now loaded."); }; } else { iframe.onreadystate

  • js或者jquery判断图片是否加载完成实现代码

    网页中有时候需要获得图片的宽度和高度,来定义某些大小,可是这个是需要从服务端请求图片,下载到本地才能够得到的,有些js或者jquery代码在还没有加载完图片时就执行了.怎么办呢? jquery提供一个方法: 复制代码 代码如下: 01.$("").load(function(){...}); 其中选择器是图片的id或class,function里面的方法就是回调函数,在图片加载完成后执行,但是我试验了很多,压根儿不是那么回事,正确的解决方法是: 用js的onload方法: 复制代码 代

  • js下判断 iframe 是否加载完成的完美方法

    采用的方法很类似: 复制代码 代码如下: var iframe = document.createElement("iframe"); iframe.src = "http://www.jb51.net"; if (!/*@cc_on!@*/0) { //if not IE iframe.onload = function(){ alert("Local iframe is now loaded."); }; } else { iframe.on

  • jquery加载页面的方法(页面加载完成就执行)

    1.$(function(){ $("#a").click(function(){ //adding your code here }); }); 2.$(document).ready(function(){ $("#a").click(function(){ //adding your code here }); }); 3.window.onload = function(){ $("#a").click(function(){ //add

  • js focus不起作用的解决方法(主要是因为dom元素是否加载完成)

    有一个文本框,id 为 d,用下面的 js 代码,想让其获得焦点. document.getElementById("d").focus(); 结果代码在 IE 中不起作用,要让 IE 中也获得焦点,得用类似如下的代码: 复制代码 代码如下: document.body.onload = function(){ document.getElementById("d").focus(); }

  • js动态加载以及确定加载完成的代码

    代码如下: 复制代码 代码如下: var otherJScipt = document.createElement("script"); otherJScipt = document.createElement("script"); otherJScipt.setAttribute("type", "text/javascript"); otherJScipt.setAttribute("src", &qu

  • 判断控件是否已加载完成的代码

    例如: 复制代码 代码如下: <input id="btnPost" type="button" value="button" /> <img src="../jqueryui/themes/base/images/ui-icons_cd0a0a_256x240.png" alt="" id="imga" /> 浏览器在解析时,首先加载 input标签,然后加载i

  • 用js判断页面是否加载完成实现代码

    用document.onreadystatechange的方法来监听状态改变, 然后用document.readyState == "complete"判断是否加载完成 代码如下: 复制代码 代码如下: document.onreadystatechange = subSomething;//当页面加载状态改变的时候执行这个方法. function subSomething() { if(document.readyState == "complete") //当页

  • 网页加载时页面显示进度条加载完成之后显示网页内容

    现在网上有很多网页加载进度条 ,但大多都是时间固定的. 下面的当查询大量数据时,网页加载较慢,在网页加载时,显示进度条,当网页加载完成时,进度条消失,显示网页已经加载完成的内容. 复制代码 代码如下: <html> <script language=VBScript> Dim Bar, SP Bar = 0 SP = 100 Function Window_onLoad() Bar = 95 SP = 10 End Function Function Count() if Bar

  • Javascript 判断Flash是否加载完成的代码

    先定义进度条显示层: 复制代码 代码如下: <div><span class="intro">下载进度:</span> <div class="barborder"> <div class="bar" id="loadpercent"></div> </div> </div> 定义广告层: 复制代码 代码如下: <div id

随机推荐