স্ক্রিনএক্স / ওয়াই, ক্লায়েন্টএক্স / ওয়াই এবং পেজ এক্স / ওয়াইয়ের মধ্যে পার্থক্য কী?


581

screenX/ Y, clientX/ Yএবং pageX/ এর মধ্যে পার্থক্য কী Y?

এছাড়াও আইপ্যাড সাফারির জন্য, গণনাগুলি কি ডেস্কটপের মতোই similar বা ভিউপোর্টের কারণে কিছুটা পার্থক্য রয়েছে?

আপনি যদি আমাকে একটি উদাহরণের দিকে তুলে ধরতে পারেন তবে দুর্দান্ত হবে।


2
আর একটি ডেমো যা মাউস স্থানাঙ্ক পেতে পাঁচটি পৃথক বৈশিষ্ট্য (স্ক্রিন, ক্লায়েন্ট, পৃষ্ঠা, স্তর, অফসেট) ব্যবহার করে।
আকিনুরি

উত্তর:


504

জাভাস্ক্রিপ্টে:

pageX, pageY, screenX, screenY, clientX, এবং clientYএকটি নম্বর ফেরত পাঠায় যা শারীরিক "সিএসএস পিক্সেল" সংখ্যা নির্দেশ করে একটি বিন্দু রেফারেন্স বিন্দু থেকে। ইভেন্ট পয়েন্টটি যেখানে ব্যবহারকারী ক্লিক করেছেন, রেফারেন্স পয়েন্টটি উপরের বাম দিকের একটি বিন্দু। এই বৈশিষ্ট্যগুলি reference রেফারেন্স পয়েন্ট থেকে অনুভূমিক এবং উল্লম্ব দূরত্ব ফিরে আসে।

pageXএবং pageY:
ব্রাউজারে পুরোপুরি রেন্ডার করা সামগ্রীর ক্ষেত্রের উপরের বাম দিকে আপেক্ষিক। এই রেফারেন্স পয়েন্টটি ইউআরএল বারের নীচে এবং উপরের বাম দিকে ফিরে বোতাম। এই পয়েন্টটি ব্রাউজার উইন্ডোতে যে কোনও জায়গায় থাকতে পারে এবং যদি পৃষ্ঠাগুলির মধ্যে এম্বেড থাকা স্ক্রোলযোগ্য পৃষ্ঠা থাকে এবং ব্যবহারকারী কোনও স্ক্রোলবার সরিয়ে দেয় তবে প্রকৃতপক্ষে অবস্থান পরিবর্তন করতে পারে।

screenXএবং screenY:
শারীরিক পর্দা / মনিটরের উপরের বামের সাথে সম্পর্কিত, আপনি যদি মনিটর বা মনিটরের রেজোলিউশন বৃদ্ধি বা হ্রাস করেন তবেই এই রেফারেন্স পয়েন্টটি সরে যায়।

clientXএবং clientY: ব্রাউজার উইন্ডোর
সামগ্রী অঞ্চল ( ভিউপোর্ট ) এর উপরের বাম প্রান্তের সাথে সম্পর্কিত । ব্যবহারকারী ব্রাউজারের মধ্যে থেকে কোনও স্ক্রোলবার সরিয়ে ফেললেও এই পয়েন্টটি সরবে না।

কোন দর্শনের জন্য কোন ব্রাউজারগুলি কোন বৈশিষ্ট্য সমর্থন করে:

http://www.quirksmode.org/dom/w3c_cssom.html#t03

ডাব্লু 3 স্কুলগুলিতে একটি অনলাইন জাভাস্ক্রিপ্ট দোভাষী এবং সম্পাদক রয়েছে যাতে আপনি দেখতে পান যে প্রতিটি কী করে

http://www.w3schools.com/jsref/tryit.asp?filename=try_dom_event_clientxy

<!DOCTYPE html>
<html>
<head>
<script>
function show_coords(event)
{
  var x=event.clientX;
  var y=event.clientY;
  alert("X coords: " + x + ", Y coords: " + y);
}
</script>
</head>

<body>

<p onmousedown="show_coords(event)">Click this paragraph, 
and an alert box will alert the x and y coordinates 
of the mouse pointer.</p>

</body>
</html>


4
এবং jquery এ অফসেটএক্স এবং অফসেটওয়াই মূল পাত্রে আপেক্ষিক
মুহাম্মদ উমার

2
W3schools এর লিঙ্কটি এখন কেবলমাত্র রেফারেন্স বিভাগে উপলভ্য বলে মনে হচ্ছে: w3schools.com/jsref/tryit.asp?filename=try_dom_event_clientxy
বৈধ

1
আমি মনে করি এটি পেজএক্স / পেজওয়াইয়ের জন্য একটি বিভ্রান্তিমূলক বা কমপক্ষে অকার্যকর ব্যাখ্যা (এবং ফলস্বরূপ, প্রশ্ন) কারণ এটি ইউআরএল বার এবং পিছনের বোতামটির জন্য একটি রেফারেন্স তৈরি করে যেখানে পৃষ্ঠার বিষয়বস্তুর ক্ষেত্রে এটি আরও ভালভাবে ব্যাখ্যা করা হয়েছে যেমন ভিজ্যুয়াল ব্যাখ্যা উত্তর বলে। এছাড়াও, ডাব্লু 3 স্কুলের উদাহরণ সহায়ক নয় কারণ এটি কেবল একটি এক্স / ওয়াই জুটি আউটপুট করে এবং এতে কোনও স্ক্রোলিং নেই যা পার্থক্যটি দেখায়।
রবার্ট মনফেরা

4
পেজএক্স / পেজওয়াই এবং ক্লায়েন্টএক্স / ক্লায়েন্টওয়্যার ব্যাখ্যাগুলি আন্তঃসংযোগিত হয়। আপনার এটি সংশোধন করা উচিত এটি বিভ্রান্তিকর
নভপ্রীত কাউর

1
আমার মনে হয় @ নবপ্রীতকৌর ঠিক বলেছেন। এই উত্তরটি ক্লায়েন্টএক্স বনাম পেজএক্সএক্সের বিপরীতে পেয়েছে
zhouji

496

এখানে একটি ছবি মধ্যে পার্থক্য ব্যাখ্যা এর pageYএবং clientY

পেজওয়াই বনাম ক্লায়েন্টওয়াই

যথাক্রমে pageXএবং একই জন্য clientX


pageX/Y স্থানাঙ্কগুলি পুরো রেন্ডার পৃষ্ঠার উপরের বাম কোণে (স্ক্রোলিং দ্বারা আড়াল হওয়া অংশগুলি সহ) সম্পর্কিত,

যখন clientX/Yস্থানাঙ্ক পৃষ্ঠার দৃশ্যমান অংশ উপরের বাঁদিকের কোণায় আপেক্ষিক হয়, "দেখা" ব্রাউজার উইন্ডো মাধ্যমে।

ডেমো দেখুন

আপনার সম্ভবত কখনও প্রয়োজন হবে না screenX/Y


21
দুর্দান্ত, ডেমোর জন্য ধন্যবাদ, পাঠ্যের চেয়ে আরও ভাল ব্যাখ্যা করে।
রাহুল প্রসাদ

আমি চাই @ SimoEndre এর ব্যাখ্যা শ্রেষ্ঠ
পিয়ের

9
কি কল্পনা করতে যত্ন screenX/Y?
অজয়

1
আমি পৃষ্ঠার একটি নির্দিষ্ট আয়তক্ষেত্রাকার অঞ্চলে ক্লিক ইভেন্ট বাঁধতে চাই তাই এর pageX/pageYপরিবর্তে ব্যবহার করা উচিত clientX/clientY?
techie_28

1
সহজ এক্স এবং ওয়াই সম্পর্কে কি? তারা clientX / ওয়াই হিসাবে একই বলে মনে হচ্ছে যখন আমি চেষ্টা করেছিলেন কিন্তু আমি এটা উপর একটি নির্দিষ্ট রেফারেন্স খুঁজে পাইনি
zhouji

117
  1. পেজএক্স / ওয়াই<html> সিএসএস পিক্সেলের উপাদানটির সাথে তুলনামূলক স্থানাঙ্ক দেয় ।
  2. ক্লায়েন্টএক্স / ওয়াইviewport সিএসএস পিক্সেলের তুলনায় স্থানাঙ্ক দেয় ।
  3. স্ক্রিনএক্স / ওয়াইscreen ইন ডিভাইস পিক্সেলের সাথে তুলনামূলক স্থানাঙ্ক দেয় ।

আপনার শেষ প্রশ্নটি সম্পর্কে যদি গণনাগুলি ডেস্কটপ এবং মোবাইল ব্রাউজারগুলিতে একই হয় ... আরও ভাল বোঝার জন্য - মোবাইল ব্রাউজারগুলিতে - আমাদের দুটি নতুন ধারণাটি আলাদা করতে হবে: লেআউট ভিউপোর্ট এবং ভিজ্যুয়াল ভিউপোর্ট । ভিজ্যুয়াল ভিউপোর্ট হ'ল পৃষ্ঠার অংশ যা বর্তমানে স্ক্রিনে প্রদর্শিত হয়েছে। লেআউট ভিউপোর্টটি ডেস্কটপ ব্রাউজারে রেন্ডার করা পুরো পৃষ্ঠার সমার্থক শব্দ (বর্তমান ভিউপোর্টে দৃশ্যমান নয় এমন সমস্ত উপাদান সহ)।

মোবাইল ব্রাউজারগুলিতে pageXএবং pageYএখনও সিএসএস পিক্সেলের পৃষ্ঠার তুলনায় আপেক্ষিক যাতে আপনি নথির পৃষ্ঠার তুলনায় মাউস স্থানাঙ্কগুলি পেতে পারেন। অন্যদিকে clientXএবং চাক্ষুষ ভিউপোর্টেরclientY সাথে সম্পর্কিত মাউস স্থানাঙ্কগুলি সংজ্ঞায়িত করুন

ভিজ্যুয়াল ভিউপোর্ট এবং লেআউট ভিউপোর্টের মধ্যে পার্থক্য সম্পর্কে এখানে আরও একটি স্ট্যাকওভারফ্লো থ্রেড রয়েছে: ভিজ্যুয়াল ভিউপোর্ট এবং লেআউট ভিউপোর্টের মধ্যে পার্থক্য?

আরেকটি ভাল সংস্থান: http://www.quirksmode.org/mobile/viewport2.html


27

আমাকে এই পৃষ্ঠায় সরাসরি একটি ইভেন্ট যুক্ত করতে এবং নিজের জন্য চারপাশে ক্লিক করতে সাহায্য করেছিল! বিকাশকারী সরঞ্জাম / ফায়ারব্যাগ ইত্যাদিতে আপনার কনসোলটি খুলুন এবং এটি আটকে দিন:

document.addEventListener('click', function(e) {
  console.log(
    'page: ' + e.pageX + ',' + e.pageY,
    'client: ' + e.clientX + ',' + e.clientY,
    'screen: ' + e.screenX + ',' + e.screenY)
}, false);
Click anywhere

এই স্নিপেটের সাহায্যে আপনি স্ক্রোল করার সাথে সাথে আপনার ক্লিকের অবস্থানটি ট্র্যাক করতে পারবেন, ব্রাউজার উইন্ডোটি সরানো ইত্যাদি

লক্ষ্য করুন যে পৃষ্ঠায় X / Y এবং ক্লায়েন্টএক্স / ওয়াই একইরকম থাকে যখন আপনি উপরের দিকে পুরোপুরি স্ক্রোল করে থাকেন!


5

এর মধ্যে পার্থক্যটি আপনি বর্তমানে কোন ব্রাউজারটির উল্লেখ করছেন তার উপর নির্ভর করবে। প্রত্যেকেই এই বৈশিষ্ট্যগুলি আলাদাভাবে প্রয়োগ করে, বা একেবারেই নয়। ডোম এবং জাভাস্ক্রিপ্ট ইভেন্টস এর মতো ডাব্লু 3 সি স্ট্যান্ডার্ডের ক্ষেত্রে ব্রাউজারের পার্থক্যের বিষয়ে কুইর্কসোডে দুর্দান্ত ডকুমেন্টেশন রয়েছে।


4
আপনার উত্তরটি ভাল, তবে শীঘ্রই এটি পুরানো হয়ে উঠবে quirksmode.org/mobile/tableViewport_desktop.html
ড্যান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.