/ / jQuery remove () рухає мої блоки div ... як я можу виправити свої позиції? - jquery, html, load

jQuery remove () рухає мої блоки div ... як я можу виправити свої позиції? - jquery, html, load

Я використовую jQuery, щоб оновити вміст у контейнері DIV. Після натискання посилання на оновлення я закликаю jQuery видалити () вміст DIV, а потім завантажити () для повторного створення їх та вмісту.

Проблема полягає в тому, що я маю меню та навігацію внизу, і коли я оновлюю зміст, тимчасово після вилучення DIV () "d", після завантаження вмісту Ajax, весь нижній нанівець виявляється тимчасовим.

HTML:

 <div id="container">
<!-- Below PHP include generates contentdiv1 and contentdiv2 -->
<?php include($_SERVER["DOCUMENT_ROOT"]."/content.php"); ?>
</div>
<div id="refresh">
<a href="javascript: void(0)" id="refreshbutton">Refresh</a>
</div>
<div id="bottomnav">
<!-- nav menus and copyright type junk here is getting pushed UP^^^ -->
</div>

JAVASCRIPT:

// This occurs when the "refresh" link is clicked
$("div#contentdiv1").remove();
$("div#contentdiv2").remove();
$("div#container").load("/content.php?rnd="+ Math.random()*999999);

Вся допомога цінується. Дякую

Відповіді:

1 для відповіді № 1

Можливо, вам не доведеться видаляти вміст, якщо ви повторно завантажуєте розділ div. Завантаження автоматично замінить вміст.

Один із варіантів - зменшити вміст під час завантаження, таким чином, він виглядає так, ніби вміст зникає до нового вмісту.


0 для відповіді № 2

добре, ти не треба їх видалити .. ти можеш їх знову використовувати ...

Але якщо вам дійсно потрібно, тому що у вас просто єдо, тоді ви можете створити контейнер для розділів, які потрібно видалити. Тоді цей контейнер буде використовувати весь простір, який він повинен мати, так що при видаленні divs нічого не зміниться ....;))


0 для відповіді № 3

The load() замінить вміст, коли він його має, не потрібно .remove() спочатку. Принаймні, це як працює, коли я використовую його.


0 для відповіді № 4

Спасибі всім, ви добре, навантаження () дійсно замінює вміст.

Я зрозумів, що насправді проблема полягає в тому, що я використовую fadeIn () за допомогою load (), тому, якщо ви натискати кнопку refresh перед fadeIn () (використовуючи 3 секунди fadeIn), то нижня частина DIV рухається вгору.

Якщо ви чекаєте на завершення функції fadeIn (), то в нижній частині клавіші DIV переміщення буде позначено.

Чи існує спосіб переривати виклик fadeIn (), який працює так, що моєму нижньому краю DIV тимчасово не піднімається?

Чесно кажучи, я не знаю, чому переривання fadeIn () спричинить таку поведінку.