নির্দিষ্ট অবস্থানে উপাদান পান - জাভাস্ক্রিপ্ট


133

জাভাস্ক্রিপ্ট ব্যবহার করে আমি কীভাবে একটি নির্দিষ্ট অবস্থানে উপাদানটি সনাক্ত করতে পারি? মূলত আমি একটি ফাংশন লিখতে চাই যা দুটি ইনপুট প্যারামিটার নেয় (x এবং y স্থানাঙ্ক) এবং পরামিতি দ্বারা প্রতিনিধিত্ব করা পর্দার অবস্থানের এইচটিএমএল উপাদানটি প্রদান করে।


উত্তর:


241

22
শুধুমাত্র যদি সেখানে ছিল document.elementsFromPoint- যদি উপাদানগুলি ওভারল্যাপ হয়।
— সেয়রিয়া

2
আমি এটি 5.5 এ কাজ করে বিস্মিত এবং আজকের দিনে তেমন ব্যবহার হয় না।
— ভ্লাদ নিকুলা

আমি এই পদ্ধতিটি চেষ্টা করেছি এবং এটি দস্তাবেজ অনুসারে অবস্থানটি পরিমাপ করে। আমি কীভাবে এটি প্যারেন্ট উপাদানগুলির সাথে তুলনামূলকভাবে ব্যবহার করব?
— চরস

স্থানাঙ্ক x, y এ যদি কোনও ফ্রেম বা iframe থাকে তবে আপনি সেই অবস্থানের উপাদানটির পরিবর্তে ফ্রেমটি পাবেন।
— এলময়ে

13
document.elementsFromPointপরীক্ষামূলকভাবে হলেও সাম্প্রতিক ওয়েবকিট এবং গেকো সক্ষম ব্রাউজারগুলিতে উপলব্ধ। এমডিএন দেখুন ।
— zopieux

27

আপনি স্থানীয় জাভাস্ক্রিপ্ট elementFromPoint(x, y)পদ্ধতিটি ব্যবহার করতে পারেন , যা ভিউপোর্টে x, y স্থানাঙ্কে উপাদানটি প্রদান করে।

উপাদানটি থেকে দেখুনফ্রন্টপয়েন্ট w3c খসড়া

এবং, একটি কোড নমুনা:

function changeColor(newColor) {
    // Get the element placed at coords (2, 2)
    var elem = document.elementFromPoint(2, 2);
    // Set the foreground color to the element
    elem.style.color = newColor;
}
<p id="para1">Change this text color using the following buttons.</p>
<button onclick="changeColor('blue');">Blue</button>
<button onclick="changeColor('red');">Red</button>

আপনি setInterval()অবিচ্ছিন্নভাবে উপাদানটির হোভার ইভেন্টটি পরীক্ষা করতে ব্যবহার করতে পারেন তবে এটি প্রস্তাবিত নয়, .hover(...)অ্যাপ্লিকেশনটির কার্যকারিতা বাড়ানোর পরিবর্তে ব্যবহার করার চেষ্টা করুন এবং CSS ব্যবহার করুন ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.