【问题标题】:Showing initialy hidden iframe显示最初隐藏的 iframe
【发布时间】:2018-06-20 07:26:25
【问题描述】:

我正在将页脚中的注册页面作为隐藏的 iframe 加载(内部显示:无 div)。

include(/login/pages/register.php') 

当点击“注册”按钮时 - 注册表格应该会出现(但它不会出现)。问题是 - iframe 在 BODY Load 上初始化( 标签内的 onload="RegStartup.init(config)" )。由于注册页面托管在远程服务器上,我无法更改任何内容。我找到的唯一解决方案是在单击“注册”按钮时重新加载 iframe:

$('.register').click( function (){

        // reloading frame to trigger init
        $( '#reg_iframe' ).attr( 'src', function ( i, val ) { return val; });

        $('.reg_overlay').fadeIn(666);
        $('#auth_popup').fadeIn(666);



    });

这可行,但解决方案相当难看。我还能怎么做?

附加信息;此问题仅存在于 Firefox 中。 Chrome,IE - 工作正常。

【问题讨论】:

    标签: javascript jquery iframe


    【解决方案1】:

    嗯,iframe 没有显示的主要原因很明显是display: none; 所以 - 任何其他隐藏 iframe 然后显示它的方法都可以正常工作。例如:

    1. 使用visibility: hidden; 代替display: none;
    2. 设置 iframe 的零高度 (height: 0%) 并在点击时将其设为 100%(或 100vh)

    或者使用上面显示的初始解决方案。

    【讨论】:

      猜你喜欢
      • 2012-06-02
      • 1970-01-01
      • 2017-03-14
      • 2012-04-18
      • 2015-07-07
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多