Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE设计模式显示显示:无Divs_Javascript_Jquery_Internet Explorer_Tinymce_Designmode - Fatal编程技术网

Javascript IE设计模式显示显示:无Divs

Javascript IE设计模式显示显示:无Divs,javascript,jquery,internet-explorer,tinymce,designmode,Javascript,Jquery,Internet Explorer,Tinymce,Designmode,我对此做了很多研究,但我无法解决这个问题。我有一个Div,其中有几个Div,我想在打开TinyMCE实例之前隐藏它们 我通过jQuery来做这件事- $(".drop").hide() 这很好用,除了Trident(IE)之外的每个浏览器引擎都会隐藏它们。如果我检查IE中的元素,css指示“display:none” 我找到了一些关于这是IE的一项功能如何展示这些元素的文章和注释,包括MSDN上的这篇: 问题是我需要把它们藏起来。有什么想法吗?您可以尝试应用一种样式,将显示设置为“无”以外的其

我对此做了很多研究,但我无法解决这个问题。我有一个Div,其中有几个Div,我想在打开TinyMCE实例之前隐藏它们

我通过jQuery来做这件事-

$(".drop").hide()
这很好用,除了Trident(IE)之外的每个浏览器引擎都会隐藏它们。如果我检查IE中的元素,css指示“display:none”

我找到了一些关于这是IE的一项功能如何展示这些元素的文章和注释,包括MSDN上的这篇:


问题是我需要把它们藏起来。有什么想法吗?

您可以尝试应用一种样式,将显示设置为“无”以外的其他样式,例如:

.drop
{
    display: block; // or inline
}

这听起来像是IE需要元素“有布局”才能对其执行某些操作,而隐藏是其中之一。给定块显示类型的元素应具有布局,即,它占用空间并强制浏览器重新组织周围的同级元素。

据我所知,tinyMCE使用iframe进行编辑,并在iframe中启用编辑模式。因此,如果在加载tinyMCE之前处于编辑模式,您确定必须将外部文档置于编辑模式

为了澄清,您是想影响iframe的内部,还是tinyMCE正在加载包含display:none的内容

如果在tinyMCE中加载带有display:none的内容,您可能需要做一些混乱的工作,在加载时删除节点,并在保存时尝试将它们重新插入相同的位置


我能看到的唯一好处是,如果在其他浏览器中,您只需选择节点两侧的文本,就会不知不觉地删除隐藏的节点。

这是因为在可编辑元素中,IE使所有内容(包括显示时隐藏的元素)都可编辑:无。除了从页面的DOM中删除您希望隐藏的元素之外,您对此无能为力


这里提到了IE的这种行为:

现在就是这样设置的。我相当确定这与hasLayout有关,但不确定如何使其工作。您是否有我可以查看的在线示例?不幸的是,没有,它是内部的。TinyMCE正在加载内容,特别是divs,包含
display:none
。谢谢,我找到了那篇文章,但值得注意。谢谢