显示初始隐藏的iframe

时间:2018-06-20 07:26:25

标签: javascript jquery iframe

我将页脚中的注册页面加载为隐藏的iframe(内部显示:none 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-运行正常。

1 个答案:

答案 0 :(得分:0)

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

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

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