【问题标题】:jQuery create element initially hiddenjQuery 创建元素最初是隐藏的
【发布时间】:2023-03-26 11:04:01
【问题描述】:

有没有办法创建一个元素并在最初隐藏它?我正在创建一个iframe,但不希望它立即显示。

【问题讨论】:

标签: javascript jquery


【解决方案1】:

像这样:

var FName = $("<iframe>").hide();

【讨论】:

    【解决方案2】:
    var my_iframe = $('<iframe name="your_iframe" src="your_source"></iframe>');
    

    现在my_iframe 保存您的 jQuery 创建的 iframe。修改它,做你想做的,然后把它放到 dom 中。

    在将其插入 dom 之前,它是不可见的。

    【讨论】:

      【解决方案3】:

      非常简单。只需这样做:

      var myFrame = $("<iframe>").hide();
      

      【讨论】:

      • 但我无法在需要时显示它。即使我稍后使用 .show(),也没有任何反应。
      • 确保将其插入到文档中的某个位置。我上面的代码只创建元素。在通过 $(".parent").append(myFrame) 之类的方式将其添加到文档之前,它无法显示。
      【解决方案4】:
      var theElement = <create the iframe here>;
      theElement.hide();
      // append theElement here
      

      【讨论】:

      • 我以前做过。但我希望它根本不显示。我担心它会很快出现在屏幕上,我不希望这样。
      • 呃,这正是我告诉你的。创建元素(就像人们在许多其他地方所做的那样),将其设置为隐藏,将其附加到文档中。
      • 嗯.. 我试过了。但是稍后使用 .show() 不会显示 iframe。
      【解决方案5】:

      只需创建它并将其设置为隐藏,以多种可能的方式之一,如下所示:

      var secretThing = $('<iframe></iframe>', { css: { 'display': 'none' }});
      $('body').append(secretThing);
      

      另一种隐藏某些东西的方法是将其放置在远离视口的位置,或者将其放在其他东西的后面,或者将某个尺寸设置为零。这取决于您设计的其余部分。就个人而言,我倾向于给元素一个类值,使其隐藏。

      (@gilly3 明智地指出,方便的 jQuery“隐藏”功能可能是一种简单的方法。)

      【讨论】:

        猜你喜欢
        • 2012-04-24
        • 2011-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-13
        • 2014-12-24
        • 1970-01-01
        • 2021-12-24
        相关资源
        最近更新 更多