افتح لوحة الأكورديون مع وظيفة
-
06-07-2019 - |
سؤال
حسنًا، هذا هو الكود الكامل مع التصحيحات الإملائية وكل شيء.ما زلت أتلقى خطأ.
رمز الوالدين هو :
$("#leftNav").accordion({autoHeight: true});
<div id="leftNav"> <h3><a href="#">Client</a></h3>
<div> static text </div>
<h3><a href="#">Account Summary</a></h3>
<div> static text </div>
<h3><a href="#"> Profile</a></h3>
<div> static text </div>
<h3><a href="#">trip</a></h3>
<div>
<div id="tripHolder">
</div>
</div>
كود iFrame :
$(".bookingClass").click(function(){
var thisBookingClass = 'bClass='+$(this).attr("id");
$.ajax({
type:"POST",
url:"bookIt.jsp",
data: thisBookingClass,
cache:false,
success: function(msg) {
$("#tripHolder",top.document).html(msg);
$("#leftNav",top.document).accordion('activate',3);
}
});
});
الخطأ الذي أواجهه في Fire Bug هو الآن
$("#leftNav", top.document).accordion is not a function
المحلول
لقد كتبت الأكورديون بشكل خاطئ في التعليمات البرمجية الخاصة بك.
يحرر:
انا املك العمل التجريبي الذي يعمل في Firefox (تم تجربته في IE6 ولكنه فشل)، فقط إذا كان رأس "العميل" هو الذي تم تحديده حاليًا.يمكنك رؤية الكود عن طريق الإضافة /يحرر إلى عنوان URL.
يبدو أن هذه مشكلة صعبة الحل، ولسوء الحظ ليس لدي الوقت الكافي للنظر فيها بشكل أكبر في الوقت الحالي.لمنع الخطأ
$("#leftNav", top.document).accordion is not a function
اضطررت إلى إضافة مرجع إلى البرنامج النصي jQuery UI إلى مصدر iframe.
يبدو أنه يتعذر الوصول إلى الأكورديون من داخل إطار iframe، ولست متأكدًا من السبب.كانت الطريقة التي حصلت بها على التنشيط للعمل مخترقة للغاية وتم استدعاؤها بشكل أساسي .accordion()
على ال #leftNav
مرة أخرى، تليها .accordion('activate',3);
كما في ما يلي
$.ajax({
type:"POST",
url:"http://jsbin.com/etiju",
data: {},
dataType: 'html',
cache:false,
success: function(msg) {
$('#tripHolder',parent.document).html(msg);
$("#leftNav",parent.document).accordion({ autoHeight:true }).accordion('activate',3);
}
});
لاحظ أنني استخدمت أيضا parent.document
بدلاً من top.document
- هذا الأخير لم يكن يعمل ولكنه يعمل عادةً في Firefox.
آمل أن يكون قد وصل بك إلى أبعد قليلاً.قد أعود إلى هذا عندما يكون لدي المزيد من الوقت.
نصائح أخرى
ويمكن أن يكون الخطأ المطبعي من الأكورديون مقابل accordian؟