راکت

مکان ماوس

6 پاسخ

سلام. وقتتون بخیر. این تابع زیر position ماوس رو پیدا میکنه. ولی از نوع کارش زیاد سر در نمیارم. میشه کمی دربارش توضیح بدید؟

  function getCursorPos(e) {
    var a, x = 0, y = 0;
    e = e || window.event;
    /*get the x and y positions of the image:*/
    a = img.getBoundingClientRect();
    /*calculate the cursor's x and y coordinates, relative to the image:*/
    x = e.pageX - a.left;
    y = e.pageY - a.top;
    /*consider any page scrolling:*/
    x = x - window.pageXOffset;
    y = y - window.pageYOffset;
    return {x : x, y : y};
  }
}
ثبت پرسش جدید

پاسخ‌ها

6
سینا شاه‌اویسی
سینا شاه‌اویسی
@sinashahoveisi

تخصص: برنامه نویس

مکان موس توسط تابع زیر قابل تشخیص است

let a = document.querySelector('')
a.addEventListener("mousemove", function(e){console.log(e)});

حالا به جای function تعریف شده میتوان تابع getCursorPos که خودتون نوشتید گذاشته بشه

let a = document.querySelector('')
a.addEventListener("mousemove",getCursorPos)});

به این صورت که تابع رو یک جای دیگه تعریف میکنید و در EventListener فقط آن تابع را پاس میدید که وقتی این اتفاق در موس افتاد تابع getCursorPos صدا زده شود.

Mesusjk
Mesusjk
@Mesusjk

تخصص: برنامه نویس جنگو و پایتون

@sinashahoveisi خروجی این با خروجیه تابعی که خودم نوشتم دقیقا یکیه؟

شاید پاسخ شما همین‌جا باشد

سینا شاه‌اویسی
سینا شاه‌اویسی
@sinashahoveisi

تخصص: برنامه نویس

تابعی که خودتون نوشتید اصلا استفاده نمیشه، اگر run کنید هیچ کاری انجام نمیشه یه تابعس فقط.
یک تابع دیگه باید اینو صدا کنه. اون تابع اسمش addEventListener یعنی وقتی رخ دادی صورت گرفت صدا زده میشه.
حالت رخداد چیه؟ حالت "mousemove" یعنی موس حرکت کرد.
وقتی این اتفاق افتاد چه کاری انجام بشه؟ تابع getCursorPos صدا زده بشه و کارای توش انجام بشه.

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

این تابع موقعیت اشاره گر رو در صفحه پیدا نمی کنه، بلکه موقعیت اشاره گر رو درون یک عنصر دیگر (در اینجا یک عکس با نام متغیر img) مشخص میکنه.

Mesusjk
Mesusjk
@Mesusjk

تخصص: برنامه نویس جنگو و پایتون

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

خواهش میکنم، سرزنده باشی.
قبلا گزینه ی تشکر وجود داشت، همون کافی بودش. الان دیگه گزینه ی تشکر در نظرات موجود نیست، میتونید جهت رو به بالا رو بزنید در عوض : )

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام