"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تحديد ارتفاع العنصر في jQuery بدون قواعد ارتفاع CSS صريحة؟

كيفية تحديد ارتفاع العنصر في jQuery بدون قواعد ارتفاع CSS صريحة؟

تم النشر بتاريخ 2024-11-09
تصفح:857

How to Determine Element Height in jQuery Without Explicit CSS Height Rules?

تحديد ارتفاع العناصر بدون قواعد ارتفاع CSS

في غياب قاعدة ارتفاع CSS لعنصر ما، قد يكون من الصعب الحصول عليها ارتفاعه. يبدو الأسلوب jQuery .height()، الذي يتطلب قيمة ارتفاع CSS محددة مسبقًا، غير مناسب في هذا السيناريو. ومع ذلك، هناك طرق بديلة لتحديد ارتفاع العنصر.

jQuery .height()

خلافًا للاعتقاد الشائع، فإن jQuery .height() لا يعتمد على على تعريف ارتفاع CSS. فهو يحسب الارتفاع المحسوب للعنصر، مما يجعله مناسبًا للسيناريوهات التي لا يتم فيها تحديد ارتفاع CSS صريح.

DEMO

.height(): يسترد ارتفاع العنصر بدون حشوة أو حدود أو هامش.

.innerHeight(): يسترد ارتفاع العنصر بما في ذلك الحشو ولكن باستثناء الحدود و هامش.

.outerHeight(): استرداد ارتفاع العنصر بما في ذلك الحدود ولكن باستثناء الهامش.

.outerHeight(true): استرداد ارتفاع العنصر بما في ذلك الحد والهامش.

مقتطف الكود للعرض التجريبي المباشر

$(function() {
  var $heightTest = $('#heightTest');
  $heightTest.html('Div style set as "height: 180px; padding: 10px; margin: 10px; border: 2px solid blue;"')
    .append('

Height (.height() returns) : ' $heightTest.height() ' [Just Height]

') .append('

Inner Height (.innerHeight() returns): ' $heightTest.innerHeight() ' [Height Padding (without border)]

') .append('

Outer Height (.outerHeight() returns): ' $heightTest.outerHeight() ' [Height Padding Border]

') .append('

Outer Height (.outerHeight(true) returns): ' $heightTest.outerHeight(true) ' [Height Padding Border Margin]

') });
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3