layer 弹层组件下的 iframe 交互详细教程

置顶帖 未结贴
54 11394
空闲广告位,联系:xianxin@layui.com
  • Steed Steed
    2017-04-17 14:15:57
    感觉很早就不提倡用iframe,为什么现在还是很多都在用
    9 回复
  • // top 页面
    layui.use(['a', 'b'], function(){
    var _tools = {
    func1: function() {
    console.log('func1');
    }
    }

    _tools.func1();

    window._tools = _tools;
    })

    // iframe 页面
    top._tools.func1();
    2 回复
  • 蛮族之王 蛮族之王
    2017-04-18 16:02:13
    @Steed 不用那用啥
    1 回复
  • 阳光下的码农 阳光下的码农
    2017-04-21 17:25:39
    这样可以的吗?幸好明天周六日,可以重新写。。。这是我从这边找到的模板直接往上改的,看到上面就是直接用的两个,一个layui,一个bootstrp.....
    1 回复
  • 野生高富帅 野生高富帅
    2017-05-05 14:04:01
    @小魔方 可以了!非常感谢![偷笑]
    1 回复
  • 空惗 空惗
    2017-04-17 11:46:29
    [太开心] 很好啊。 收藏了
    0 回复
  • hahha hahha
    2017-04-20 15:05:29


    主要是第三行代码,页面中的单选和多选按钮出不来,我已经是按照模板来写的,麻烦解决下,谢谢@小魔方
    0 回复
  • 野生高富帅 野生高富帅
    2017-04-20 22:30:55
    @Steed 不要人云亦云,不用别人提供的的前提是你有更好的实现方式和能力
    0 回复
  • 阳光下的码农 阳光下的码农
    2017-04-21 09:50:18
    页面中的 iframe 相交互后,但是我这边动态tab点击关闭等效果失效了,一般是什么地方的原因呢?
    0 回复
  • Steed Steed
    2017-04-21 09:59:06
    @野生高富帅 我没用iframe 用的vue
    0 回复
  • 0 回复
  • 阳光下的码农 阳光下的码农
    2017-04-21 17:17:18
    @小魔方 我这边在做一个医院的后台,刚看到这个框架并不兼容IE6-7-8,那我在再用上Bootstrap应该没问题吧?。。。
    0 回复
  • @阳光下的码农 你就直接用 bootstrap 就行了,不需要 用倆
    0 回复
  • @阳光下的码农 加油吧,做事情先计划好
    0 回复
  • 阳光下的码农 阳光下的码农
    2017-04-21 17:46:21
    @小魔方 嗯嗯,涨经验了~~~我会努力的!谢谢
    0 回复
  • 无畏无惧 无畏无惧
    2017-04-22 11:07:28
    不错偶,涨经验了,值得收藏
    0 回复
  • 小柒358 小柒358
    2017-04-27 13:30:40
    0 回复
  • Dick Dick
    2017-05-02 01:56:12
    @Steed ajax异步调用吗?
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 09:13:39
    @小魔方 没有讲iframe之间的传值啊 如果用rest风格的话,这种操作方式好像就不行了,还是需要用js传值啊
    0 回复
  • @野生高富帅 「rest风格」是什么东西
    都可以拿到 iframe 的 window 对象了,操作里面的变量就是 对象.变量名,操作里面的节点就是 window.doucment.getEle...
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 09:29:38
    @小魔方 你的意思是说 不用trigger一层一层的往上触发,只需要在子iframe中取得顶层的window对象,然后在子iframe中操作这样吗 ? 如果顶层的函数有参数呢,子iframe的操作可以把参数传递进去吗,我用trigger试了一下不行
    0 回复
  • ch493 ch493
    2017-05-05 09:44:00
    [嘻嘻]
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 10:27:09
    @小魔方 大牛,我刚试了 取到顶层window以后,如果我用的是layui.use这种方式,该怎么调用顶层的方法呢。。
    0 回复
  • @野生高富帅 top 和 iframe 之间貌似 trigger 不上去。。。反正我是没听说过

    iframeWin.layui.layer
    iframeWin.layui.jquery
    iframeWin.layui.form()
    iframeWin.layui.element()
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 12:58:23
    @小魔方 是不能trigger还是可以啊。。你这话我听着有歧义,方向不要搞反了。。
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 12:59:50
    @小魔方 可以trigger原生的事件,但是不能传递参数,问题在这里。。
    如果用命名空间这样子我估计倒是可以,就是用layui.use这种方式又不知道怎么搞了。。。唉
    0 回复
  • @野生高富帅 「trigger 不上去」哪里歧义了,「可以trigger原生的事件」你是怎么 trigger 的?
    用 layui.use 和以前的 所有代码写到一个闭包里不是一回事么
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 13:28:53
    @小魔方 估计是trigger没起作用,然后触发了原生事件。。因为换成triggerHandler就不行了。
    我试了一下直接在子iframe获取到top对象,然后调用的时候提示xxxx不是一个function。。大牛,要不留个QQ,,晚上给我远程一下嘛。。给50红包。。对闭包和命名空间这一块实在是捉急啊
    0 回复
  • @野生高富帅 「直接在子iframe获取到top对象,然后调用的时候提示xxxx不是一个function」
    是因为你认为的这个 top 对象和你想要调用的 function 就没在一个页面
    或者你的这个 function 在 layui.use 里,同时你又没暴露给 window 一个接口
    也就是你就没有弄明白 iframe 之间的关系
    http://fly.layui.com/jie/9320.html 这些个示例你能看明白么
    如果这些能看明白那就应该没什么问题
    0 回复
  • 野生高富帅 野生高富帅
    2017-05-05 13:49:28
    @小魔方 这办法好呀,我先试试
    0 回复
最近热帖
完全基于 layui 开发的后台管理模板 2726
三层导航怎么做? 638
「源码市场」 正式版本上线 基于layui开发 571
2.0啥时候出啊,新项目要启动了 516
给2.0一些期待 448
麻烦朋友们投个票呗,FLY社区模板+thinkphp5驱动+个人DIY 373
layui整合datatable了么 314
ajax修改资料成功后 怎么进行初始化 页面刷新还是调用登录时的缓存 273
form.render('select') 更新渲染问题 240
select 动态操作不起作用,求助 202
近期热议
完全基于 layui 开发的后台管理模板 35
layui富文本编辑器图片上传无法回显 15
表单校验无效,找了好长时间找不到原因,求大神看下 14
这个社区的完整源码能不能共享 13
ajax修改资料成功后 怎么进行初始化 页面刷新还是调用登录时的缓存 10
select 动态操作不起作用,求助 10
给2.0一些期待 9
laytpl不解析 8
如何给弹出层传参数? 8
文本编辑器出不来 8