سؤال

لدي حمس هو 400 بكسل في الارتفاع مع معرف "المحتوى"، ثم أقوم بعد ذلك في DIV، قم بتحميل بعض البيانات في DIV من ارتفاع متفاوت، على سبيل المثال 200PX، ثم قم بإجراء SlideToggle آخر. ما أحصل عليه هو الانزلاق توسيع إلى 400px، ثم القفز مرة أخرى إلى 200px. والشيء نفسه في الاتجاه المعاكس، والتوسع إلى 200px، ثم القفز إلى 400px.

هذا هو رمزي:

$('#content').slideToggle(600, function() {
    $("#content").load('data.php').slideToggle(600);
});

لذلك اعتقدت أنني أستطيع أن أفعل شيئا مثل هذا، والتي من شأنها أن تنزلق المحتوى DIV، قم بتحميل البيانات، ثم بعد الانزلاق الذي تم تحميله مرة أخرى. هذا لا يقفز مثل الطريقة المذكورة أعلاه، لكنه متشنج للغاية لسبب ما.

$('#content').slideUp(600, function() {
    $("#content").load('data.php', function() {
        $("#content").slideDown(600);
    });
});

هل يمكن لأي شخص أن يقول لي إذا كانت هناك طريقة أفضل للقيام بذلك حتى أتمكن من تنزلقها بسلاسة؟

هل كانت مفيدة؟

المحلول 2

$('#content').slideUp(600, function() {
    $("#content").load('data.php', function() {
        $("#content").slideDown(600);
    });
});

هذا ينتج أفضل النتائج.

نصائح أخرى

كان لدي مشكلة مماثلة. كنت قادرا على تصحيح هذه المشكلة عن طريق تعيين ارتفاع DIV قبل الانزلاق.

مثال:

$("#myDiv").height($("#myDiv").height());
$("#myDiv").slideUp();
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top