همونطور که می دونید JQuery فقط افست بالا و چپ رو مستقیماَ بر می گردونه. امروز داشتم روی یه قالب کار می کردم که برای یه بخشی ازش نیاز به تعیین فاصله آبجکت از سمت راست پنجره داشتم.

امکاناتی که JQuery در اختیارم می ذاشت چیا بود؟

می تونستم عرض پنجره و عرض آبجکت رو با متد ()width. پیدا کنم. همچنین افست چپ رو هم در اختیار داشتم. خب خیلی ساده به روشی که در ادامه بهش اشاره می کنم عرض آبجکت و فاصله از چپ رو از عرض پنجره کم کردم و جواب گرفتم:

// Controlling main navigation drop-down behavior
   jQuery(function(){

       // Determine whole page width
       var winWidth = parseInt(jQuery(window).width());

        // Parent1 (products menu item)
       var offset1 = jQuery('.yutab-nav ul li.parent.parent1').offset();
       var offsetLeft1 = parseInt(offset1.left);
       var objWidth1 = parseInt(jQuery('.yutab-nav ul li.parent.parent1').width());
       var rightDistance1 = winWidth - offsetLeft1 - objWidth1;

        jQuery('.yutab-nav ul li.parent.parent1 div.dropdown').css({ 'width':winWidth-4 , 'right':-rightDistance1+3 });
  });
 

با این روش می شه افست پائین رو هم محاسبه کرد ولی در اونصورت بجای ارتفاع پنجره باید ارتفاع سند رو اندازه گیری کنید.

مجموع رتبه (0)

0 از 5 ستاره

نظر خود را اضافه کنید.

ارسال نظر به عنوان مهمان

0

کاربرانی که در این گفتگو شرکت کرده اند