通常我们在项目中会遇到这样的问题:我们要去监听某一个元素或者事件执行之后去回调另个方法,以达到监听的目的,所以对于回调的方式可以按照如下方式书写:
需求:
页面上有一个ifram标签,我们要监听这个ifram加载完成之后,去掉用一个函数:
<body>
<iframe id="ifram1" src=""></iframe>
<script>
/**
* 监听iframe加载完成之后,回调一个函数
*
* */
function Iframe(){
this.init=function(_iframe,fn){
debugger;
_iframe.src="http://www.baidu.com";
//回调函数fn告诉我已经加载完成;
if (_iframe.attachEvent){
_iframe.attachEvent("onload", function(){
fn.call(this);
});
} else {
_iframe.onload = function(){
fn.call(this);
};
}
};
};
function callBack(){
alert("ifram is loaded!");
};
var ifram = document.getElementById("ifram1");
var a = new Iframe();
debugger;
a.init(ifram,callBack);
</script>
</body>