سؤال

أنا لا يمكن معرفة كيفية معرفة accordioncontainer لضبط الارتفاع من الأكورديون جزء السيارات بحيث أن ارتفاع الجزء الحيوي اعتمادا على محتواها.

في البرمجية التالية انا إضافة جزأين إلى accordioncontainer.واحد لديه ارتفاع 10px آخر قد 90px ولكن في كلتا الحالتين ارتفاع الأكورديون جزء يحسب أن 10px.يبدو دائما أخذ الطول من أول واحد.

var accordionContainer = new dijit.layout.AccordionContainer({'id':'accContainer'}).placeAt("test");
var accordPane = new dijit.layout.ContentPane({"title": "test", "content":"<div style='height:10px'>sdfsdfsdf</div&gt;"});
var accordPane2 = new dijit.layout.ContentPane({"title": "test1", "content":"<div style='height:90px'>sdfsdfsdf</div>"});

accordionContainer.addChild(accordPane);
accordionContainer.addChild(accordPane2, 1);
accordPane.startup();
accordPane2.startup();
accordionContainer.startup();
accordionContainer.selectChild(accordPane2);

أنا باستخدام دوجو 1.3.2

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

المحلول 2

لقد تجاوزت وظيفة _gettargetheight من dijit.layout.accordionContainer وأعود دائمًا "Auto" للارتفاع. لن تعمل الرسوم المتحركة للألواح المنزلق بشكل صحيح ولكنها ليست ملحوظة.

_getTargetHeight: function(/* Node */ node){
// summary:
//For the given node, returns the height that should be
//set to achieve our vertical space (subtract any padding
//we may have).
//This is used by the animations.

//var cs = dojo.getComputedStyle(node);
//return Math.max(this._verticalSpace - dojo._getPadBorderExtents(node, cs).h, 0);
return 'auto';
}

نصائح أخرى

فإنه ليس من الممكن في الوقت الراهن.كتبت مدونة / نموذج التعليمات البرمجية إلى شرح لماذا وكيف تولد مجموعة من TitlePane هذا التوسع الطبيعي الارتفاع (بدلا من ارتفاع الحاوية على AccordionContainer):

http://www.sitepen.com/blog/2008/10/21/quick-fixes-and-dojo-support/

فإنه يتطلب صنع واحد TitleGroup القطعة (العرف الكود في بلوق), ووضع TitlePane هو في الداخل.كل تتصرف في الغالب مثل AccordionPane (مع عنوان="" سمات href="" تحميل القدرات ، إلخ) و المندوبين العنوان النقرات لإدارة مفتوحة/مغلقة الدولة من الأشقاء.

حاول ضبط الأبعاد على حاوية الأكورديون نفسها بحجم كبير بما يكفي لعقد المحتوى الخاص بك بالإضافة إلى أجزاء العنوان اللازمة ، على سبيل المثال

#accContainer{
  height: 120px;
  width: 200px;
}

يجب أن تبدأ استدعاء Startup () على الحاوية من أجنحة الأطفال من أجلك.

الآن يمكنك أيضًا الاستخدام dijit.TitlePaneS مع عدم وجود حاوية على الإطلاق. يمكنك تمرير open: false عندما تقوم بتسهيل الأجزاء لبدء إغلاقها. أعتقد أن أرفقهم في dojox.widget.TitleGroup سوف يحاكي سلوك وجود واحد مفتوح في وقت واحد.

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