jQuery .get и.append в IE7 заставляет текущий контент исчезать
Код работает на Firefox, Safari, Chrome и IE8+, но не на IE7. Это заставляет контент исчезать. Я попробовал инструменты разработчика в IE, и если я найду одну из строк в контенте и добавлю к нему какой-либо CSS, контент снова появится.
Я вызываю следующий код на событие прокрутки. когда $(document).scrollTop()
близко к некоторому значению.
$.get('NewMoviesSub.aspx?c=' + (currentSet * 25).toString(), {
curset: (currentSet * 25)
}, function(data) {
var content = $(data).find('.movieTable');
$("#MoviesDiv").append(content);
});
Я прошел через весь другой код и содержание в $("#MoviesDiv")
исчезает, когда .append
срабатывает в коде. Поскольку get является асинхронным, изменение содержимого происходит через некоторое время после первоначального вызова функции. Вот почему я даже отключил функцию прокрутки и попытался вызвать кнопку, чтобы эта функция была вызвана только один раз. Но содержание все равно пропало.
Этот код предназначен, чтобы помочь мне постоянно получать все больше и больше фильмов.
Новый контент найден в ('.movieTable')
это таблица с большим количеством строк фильмов. Пользуюсь ли я .append
или же .appendTo
Я получаю те же результаты.
Я посмотрел на другие примеры, где.append не работал для других людей, и я попробовал несколько решений, и ни одно из них не помогло мне.
РЕДАКТИРОВАТЬ: консоль выведет content
теперь, если вы посетите https://www.clearplay.com/NewMovies.aspx
1 ответ
Я искал другое решение для другой проблемы, и я столкнулся с этим: ответ Ника Берарди
Его ответ - предоставить способ исправить IE 6 и 7, когда при изменении DOM IE не обновляется. Исправление заключается в перерисовке родительского элемента. Он предлагает использовать jQuery css, отображая none и block. Я проверил это на моей проблеме, и это прекрасно работает, чтобы устранить симптомы.
Я все еще хотел бы иметь истинное решение этой проблемы, но так как я не могу тратить на это больше времени, я делаю этот пост.
РЕДАКТИРОВАТЬ: Это работает только немного. Пока вы не наведите указатель мыши на плакаты, они все еще отображаются, но браузеру также требуется многократное отображение всего содержимого, когда вы прокручиваете некоторое расстояние.