javascript跨层查找frame对象

javascript跨层查找frame对象

月光魔力鸭

2018-08-31 17:00 阅读 787 喜欢 0 查找frame js获得frame

在开发过程中经常会碰到跨frame 去操作的需求,那么如何获得这个frame呢,这里写了一个工具类,用来通过name获得frame的jq对象; 以下代码是基于jquery的基础上实现的,so...引入jq是必须的; 看剑--->

//根据name获得frame的jq对象,直接调用: var $frame = frameTool.findFrameByName('frameName');
var frameTool = {
    findFrameByName : function(name){
        var w = window.top.document;
        //向下查找
        var num = 0;
        var $iframes = $(w).find('iframe');
        var result = frameTool.findFrameByNameOfArr($iframes,name,0);
        return result;
    },
    frameLevel : 5,//frame 层级
    findFrameByNameOfArr : function(arr,name,num){
        num++;
        if(num == frameTool.frameLevel){
            return null;
        }
        var result = null;
        for(var i=0;i<arr.length;i++){
            var temp = arr[i];
            if($(temp).attr('name') == name){
                result =  $(temp);
                break;
            }else{
                var tempArr = $(temp).contents().find('iframe');
                if(tempArr.length>0){
                    result = frameTool.findFrameByNameOfArr(tempArr,name,num);
                    if(result == null){
                        continue;
                    }else{
                        break;
                    }
                }else{
                    continue;
                }
            }
        }
        return result;
    }
};
//求大师指正..优化代码

转载请注明出处: https://chrunlee.cn/article/js-frame-check.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
最近折腾的少了,实在没的写了,大约三四个月没更新了,先水一篇。
关于web打印,需要对页面内容进行页面样式设置,呈现出分页的样子,同时对于题目中的图片或表格尽量不分到两个页面中,因此实现了一个jquery的web打印插件,当然,这个插件目前只适用于部分情况,仅供借鉴
突然来了一个调研任务,想要实现一个类似3D虚拟展厅类似的需求,主要就是放一些学生的作品,然后预览啥的,效果还是要全景的效果。 经过一番调查,最终锁定了以前从未接触过的krpano。
前端时间搞了个小转码,放在后台,但是特别占带宽,想着能不能从前台把这个事搞定呢?读取图片的二进制,然后将字节流处理后重新生成图片展示处理啊。
整理下关于axios的使用,一些常用的调用、处理以及其他。
在今天之前,我对canvas中rotate其实是一脸蒙逼的... 虽然之前有做过图片旋转,但那是在他人的基础上直接修改的,至于为啥会这样..讲真,还真没注意过,但是今天又需要用到这块了,实在搞不定了,找了各种资料,终于明白了.. 坐标系的问题。
我们经常会有判断一个数值是素数的需求,那么我们如何来实现呢?
如何通过js调用本地摄像头呢?获取后如何对视频进行截图呢?在这里跟大家做一个简易的Demo来实现以上几个功能。