【问题标题】:Hidden div issue隐藏的 div 问题
【发布时间】:2013-03-06 18:07:17
【问题描述】:

我有一个 div,我打算像这样隐藏它:

$("#bla").hide();

直到一些 jQuery 代码用数据填充它。这似乎打破了“填充代码”。隐藏仍应允许“填充代码”访问 HTML 还是我遗漏了什么?

【问题讨论】:

  • 你有演示吗?打破“填充代码”是什么意思
  • 这取决于您填写的内容。如果它是基本的 HTML,它应该可以工作,但如果它是使用 <object> 的插件内容,则可能是隐藏时未加载对象内容。在您分享更多代码之前,很难确切地说出哪里出了问题。
  • 可以分享html代码吗?

标签: jquery


【解决方案1】:

是的,隐藏 div 仍然允许在其中“填充代码”。

来自doc

这大致相当于调用 .css('display', 'none'),只是 display 属性的值保存在 jQuery 的数据缓存中,以便稍后可以将 display 恢复到初始值。

您所做的基本上只是告诉网页不要显示您的元素。它仍然是 DOM 的一部分。您可以访问其 html 等。您可以使用.show 稍后显示它

例如:

var elem = $("#bla");
elem.hide();//hides the element
elem.text("Hello World");//sets its inner text to "Hello World"
elem.show(); // "Shows the element again"

这是另一个关于how hide/show is implemented的有趣问题

【讨论】:

    【解决方案2】:

    hide 与破坏您的填充代码无关,hide 只是将 display:none 添加到元素中并且不会将其从 DOM 中删除..所以用其他方法填充它根本不会破坏... . 但是,检查其他 javascript 问题...其他问题可能会破坏它..

    这是fiddle中的示例

    试试这个

    $("#bla").hide();
    $("#bla").text('asdasdasdsds');
    console.log($("#bla").text())
    

    检查您的控制台..

    【讨论】:

    • 请问您对我的回答有什么不满意的地方是您决定之后再添加一个?
    • 当我看到您的帖子时..您刚刚获得了文档的定义..我添加了示例...就是这样..反正 +1 因为您现在添加了所有内容..
    • 谢谢,我并没有试图咄咄逼人,我只是想知道它是否有问题或者我错过了什么:)
    • :)...我以为您错过了示例,所以我添加了小提琴...无论如何...不用担心您的答案完全没有问题,实际上您的答案比我的要好得多现在..... haapy编码..:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-05
    相关资源
    最近更新 更多