var 喊敏庆IframeOnClick = {
resolution: 200,
iframes: [ ],
interval:null,
Iframe:function() {
this.element = arguments[0]
this.cb = arguments[1]
this.hasTracked =false
},
track:function(element, cb) {
this.iframes.push(newthis.Iframe(element, cb))
if (!this.interval) {
var _this =this
this.interval = setInterval(function() { _this.checkClick() },this.resolution)
}
},
checkClick:function() {
if (document.activeElement) {
var activeElement 拿亩= document.activeElement
for (var iinthis.iframes) {
if (activeElement ===this.iframes[i].element) {// user is in this Iframe
if (this.iframes[i].hasTracked ==false) {
this.iframes[i].cb.apply(window, [])
this.iframes[i].hasTracked =true
}
}else {
this.iframes[i].hasTracked =false
}
}
}
}
}
最后直接调用
IframeOnClick.track(document.getElementById("iFrame"),function() { alert('a click') 郑握})
你这样是不可以的,因为内部的frame可能还没有加载完成,所以你找不到file这个对象的我的做法是,外面页面创建一个隐藏的对象,添加单机事件,该单机码晌事件为获取uploadrame内部的对象,再给这备模锋个对象绑定事件。你是写上传图片的吧,我仿晌也用iframe写的!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)