سؤال

وأنا تطوير موقع على شبكة الانترنت مع روبي على القضبان ولدي شعبة مع بعض المحتويات. بعد النقر على رابط أريد أن المحتوى للحصول على استبدال بعض الأشياء الأخرى. هذا يعمل بشكل جيد مع replace_html وRJS.

ولكن، كنت تفضل أن يكون هناك تتلاشى طفيف / تظهر (crossfade و؟) الانتقال بين المحتوى القديم والجديد. أيضا شعبة سيتم تغيير حجم قليلا حتى انها تريد ان تكون أكثر برودة إذا كان هذا فعل ينمو / يتقلص تأثير. كنت أفكر Scriptaculous يجب أن يكون شيئا مثل هذا في بني، ولكن أنا متأكد من لا يمكن العثور عليه إذا فعلوا ذلك.

وبالمناسبة هناك مثال كبير على ذلك إذا كان لديك حساب القاعده: تسجيل الدخول وانقر على "جميع الناس" ثم "إضافة شركة جديدة" لمعرفة التأثير في العمل

.

وأي شخص يعرف كيفية القيام بذلك؟ شكر! براين

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

المحلول

لcrossfade و، تحتاج إلى وضع المحتوى الجديد على الإطلاق، وبنفس س / ص تنسق حيث المحتوى القديم. وإليك مثال اختبار:

page.insert_html :after, 'old-content', content_tag('p', '[new content]', :id => 'new-content', :style => 'display:none')
page << <<-JS
  var oldOffset = $('old-content').cumulativeOffset();
  $('new-content').setStyle({
    position: 'absolute',
    left:     oldOffset.left + 'px',
    top:      oldOffset.top + 'px'
  });
JS
page['old-content'].fade :duration => 3
page['new-content'].appear :duration => 3

لاحظ كتلة كبيرة في منتصف بعض الأمور أسهل في نموذج مما كان عليه في RJS.

نصائح أخرى

واستراتيجية يمكن أن تكون لوضع العنصر في شعبة التفاف، تتلاشى إلى أن التفاف شعبة، استبدال HTML في العنصر، ومن ثم تتلاشى في التفاف DIV مرة أخرى.

وأنا لست RJS / المستخدم scriptaculous نفسي، لذلك أنا لست متأكدا ما هو رمز، ولكن أنا متأكد من أن الاستراتيجية ستعمل.

وتتلاشى في شعبة 1ST. أعمى في شعبة 2ND في نفس الوقت. كما يتلاشى واحد 1ST، ستظهر 2 لتوسيع ما تبقى من أول واحد.

حسنا، شيء من هذا القبيل.

وتصل حمولة الحرائق والتنقل خلال التعليمات البرمجية إذا كنت تريد أن ترى ما يسمونه.

واحد طريقة سريعة سيكون للقيام استبدال ثم ينبض في شعبة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top