javascript - كود - مميزات الجافا سكريبت




العثور على X/Y لعنصر هتمل مع جافا سكريبت (4)

أنا لست متأكدا ما كنت في حاجة إليها، وهذه الأمور هي دائما النسبية (الشاشة، نافذة، وثيقة). ولكن عندما كنت بحاجة إلى معرفة ذلك، وجدت هذا الموقع مفيدا: http://www.mattkruse.com/javascript/anchorposition/source.html

ووجدت أيضا أن تلميح تلميح المساعد جعلت ل مسج كان كل أنواع البصيرة مثيرة للاهتمام ل x، ح الحيل المواقع (انظر في فئة منفذ العرض والدعم الأساسي جكري يوفر لذلك). http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/

هذا السؤال له إجابة هنا:

كيف يمكنني العثور على إحداثيات زي لعنصر هتمل (ديف) من جافاسكريبت إذا لم يتم تعيينها بشكل صريح؟


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


لما يستحق، وهنا نسخة متكررة:

function findPos(element) {
  if (element) {
    var parentPos = findPos(element.offsetParent);
    return [
      parentPos.X + element.offsetLeft,
      parentPos.Y + element.offsetTop
    ];
  } else {
    return [0,0];
  }
}

يمكنك إضافة خاصيتين إلى Element.prototype للحصول على أعلى / يسار أي عنصر.

window.Object.defineProperty( Element.prototype, 'documentOffsetTop', {
    get: function () { return this.offsetTop + ( this.offsetParent ? this.offsetParent.documentOffsetTop : 0 ); }
} );

window.Object.defineProperty( Element.prototype, 'documentOffsetLeft', {
    get: function () { return this.offsetLeft + ( this.offsetParent ? this.offsetParent.documentOffsetLeft : 0 ); }
} );

وهنا تجريبي مقارنة النتائج إلى offset().top جكري offset().top و. .left : http://jsfiddle.net/ThinkingStiff/3G7EZ/





html