设为首页 - 加入收藏 - 网站地图 欢迎加QQ群 :14364084
当前位置:谭博的博客 > 编程语言 > js > javascript > 正文

js监听跨域的iframe的点击事件

时间:2013-05-03 16:35 来源:谭博官网 标签:js监听跨域的iframe的点击事件 作者:谭博 阅读:
<script>

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(new this.Iframe(element, cb));
             },

			 doit:function(){
				 setInterval(function() { IframeOnClick.checkClick(); }, this.resolution);
			 },

             checkClick: function() {
                 
              if (document.activeElement) {
               var activeElement = document.activeElement;
               for (var i in this.iframes) {
                if (activeElement === this.iframes[i].element) { // user is in this Iframe
                 if (this.iframes[i].hasTracked == false) {
                  this.iframes[i].cb.apply(activeElement, []);
                  this.iframes[i].hasTracked = true;
                 }
                } else {
                 this.iframes[i].hasTracked = false;
                }
               }
              }
             }
            };

</script>

<script type="text/javascript">
	 
window.onload = function (){

		var allframe =  document.getElementsByTagName('iframe');
		for(i=0; i<allframe.length; i++) {
 			IframeOnClick.track(allframe[i], function() {
				//监听后你想做的
			});
 		}


		IframeOnClick.doit();
} 
	

	
</script>

 

 

关注微信公众号

微信扫一扫,打赏我

热评文章
    内容不错,支持一下
    评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
    • 王春利
      2016-06-02 23:28:16发表

      为什么点击iframe还是不行呢?我发现只有点击除iframe之外的区域再点击iframe才能起作用,而且给body绑定的事件在iframe内不起作用。怎么回事呀?