Я провел много исследований по этому поводу, но я не могу решить эту проблему. У меня есть Div с несколькими Div внутри, которые я хочу скрыть перед включением экземпляра TinyMCE.
Я делаю это через jQuery -
$(".drop").hide()
Это прекрасно работает, и каждый движок браузера, кроме Trident (IE), скрывает их. Если я проверю элементы в IE, css указывает «display: none».
Я нашел несколько статей и заметок о том, как это функция IE для отображения этих элементов, включая этот в MSDN: http://msdn.microsoft.com/en-us/library/aa770023(VS.85).aspx
Проблема в том, что они мне нужны, чтобы спрятать. Любые идеи?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете попробовать применить стиль, который устанавливает для отображения значение, отличное от «Нет», например:
.drop
{
display: block; // or inline
}
Похоже, это вызвано необходимостью IE в элементе «иметь макет», чтобы выполнять с ним определенные операции, скрывая то, что он является одним из них. Элементы с заданным типом отображения блока должны иметь макет, то есть он занимает пространство и заставляет браузер реорганизовать элементы-братья вокруг себя.
У вас есть пример в Интернете, на который я мог бы взглянуть?
К сожалению, нет, это внутреннее.
Насколько я помню, tinyMCE использует iframe для редактирования и включает режим редактирования внутри iframe, поэтому, если вы находитесь в режиме редактирования перед загрузкой tinyMCE, вы уверены, что должны поместить внешний документ в режим редактирования.
Чтобы уточнить, пытаетесь ли вы повлиять на внутреннюю часть iframe или загружаете содержимое tinyMCE, содержащее display: none
На самом деле, если вы загружаете контент с display: none в tinyMCE, вам, возможно, придется сделать какой-то беспорядочный обходной путь, когда вы удаляете узлы при загрузке и пытаетесь повторно вставить их в то же положение при сохранении.
Единственное преимущество, которое я вижу, заключается в том, что в других браузерах вы, неосознанно, удаляете скрытые узлы, просто выбирая текст с обеих сторон узла.
TinyMCE загружает контент, в частности, блоки, содержащие display:none.
Это потому, что внутри редактируемого элемента IE делает все, включая элементы, скрытые с помощью display: none, редактируемые. Вы ничего не можете с этим поделать, кроме как удалить элементы, которые вы хотите скрыть из DOM страницы.
Здесь есть ссылка на такое поведение IE: http://msdn.microsoft.com/en-us/library/aa770023%28VS.85%29.aspx
Спасибо, с тех пор я нашел эту статью, но стоит отметить. Спасибо.
Вот как это устроено сейчас. Я почти уверен, что это связано с hasLayout, но не уверен, что делать, чтобы он работал.