জাভাস্ক্রিপ্ট ব্যবহার করে ডকুমেন্ট অবজেক্ট মডেল (DOM) এ একাধিক কার্যকারিতা যুক্ত করার সময়, বিকাশকারীকে প্রায়শই উপাদানটির সংযোগ বিশ্লেষণ করতে হয়। এটি লক্ষ্য উপাদান(গুলি) এর মূল উপাদান লগ ইন করে অর্জন করা যেতে পারে যা কোড প্রবাহকে স্ট্রীমলাইন করে এবং সাইটে অন্তর্ভুক্ত বৈশিষ্ট্যগুলির ফর্ম্যাটিংকে স্ট্রীমলাইন করে৷ বিষয়বস্তু ওভারভিউ
জাভাস্ক্রিপ্টে 'প্যারেন্ট এলিমেন্ট' প্রপার্টি কি?
দ্য ' প্যারেন্ট এলিমেন্ট ” JavaScript-এর বৈশিষ্ট্য সেই উপাদানটি পুনরুদ্ধার করে যা লক্ষ্য উপাদানটির মূল।
HTML DOM parentElement প্রপার্টির মাধ্যমে কিভাবে প্যারেন্ট এলিমেন্ট অ্যাক্সেস/ইনভোক করবেন?
মূল উপাদানটি HTML DOM ব্যবহার করে অ্যাক্সেস করা যেতে পারে “ প্যারেন্ট এলিমেন্ট 'এর সাথে সম্পত্তি' নোড নেম ' সম্পত্তি বা এর পরিবর্তে প্যারেন্ট এলিমেন্টের নোড পুনরুদ্ধার করা 'এর মাধ্যমে প্যারেন্ট নোড 'সম্পত্তি।
VIDEO
বাক্য গঠন
নোড প্যারেন্ট এলিমেন্ট
ফেরত মূল্য এই বৈশিষ্ট্যটি একটি উপাদান বস্তু পুনরুদ্ধার করে যা একটি নোডের মূল উপাদান নোডকে প্রতিনিধিত্ব করে এবং দেয় ' খালি ” যদি নোড একটি অভিভাবক গঠিত না হয়.
ব্যবহৃত সাধারণ পদ্ধতি এবং বৈশিষ্ট্য
document.querySelector() : এই পদ্ধতিটি CSS নির্বাচকের সাথে মিলে যাওয়া প্রথম উপাদান পায়।
বাক্য গঠন
নথি querySelector ( এই )
এই সিনট্যাক্সে, ' এই ” এক বা একাধিক CSS নির্বাচককে বোঝায়।
document.getElementById() : এটি নির্দিষ্ট আইডি থাকার উপাদান প্রদান করে।
বাক্য গঠন
নথি getElementById ( আইডি )
এখানে, ' আইডি ' আনয়ন করা লক্ষ্য উপাদানের আইডি নির্দেশ করে৷
নির্বাচিত সূচক : এই সম্পত্তি ড্রপ-ডাউন তালিকা থেকে নির্বাচিত বিকল্পের সূচী পুনরুদ্ধার করে। দ্য '-1' অপশন সব অপশন অনির্বাচন করে।
নোড নেম : এই সম্পত্তি নোডের নাম পুনরুদ্ধার করে।
শিশুদের : এই সম্পত্তি উপাদানের শিশু উপাদানগুলিকে সংগ্রহ হিসাবে ফেরত দেয়।
outerHTML : এই বৈশিষ্ট্যটি HTML উপাদানের পাশাপাশি এর বৈশিষ্ট্যগুলি এবং শুরু এবং শেষ ট্যাগগুলিকে বরাদ্দ করে বা পুনরুদ্ধার করে৷
প্যারেন্ট নোড : এই বিশেষ বৈশিষ্ট্য একটি উপাদান বা একটি নোডের মূল নোড নিয়ে আসে।
বিঃদ্রঃ : এর মধ্যে পার্থক্য প্যারেন্ট এলিমেন্ট ' এবং ' প্যারেন্ট নোড 'সম্পত্তি হল যে পূর্বের সম্পত্তি অর্থাৎ, 'প্যারেন্ট এলিমেন্ট' দেয় ' খালি ” যদি প্যারেন্ট নোড একটি উপাদান নোড প্রতিফলিত না করে।
উদাহরণ 1: জাভাস্ক্রিপ্টে 'প্যারেন্ট এলিমেন্ট' প্রপার্টির মাধ্যমে প্যারেন্ট এলিমেন্ট অ্যাক্সেস করা
এই উদাহরণটি একটি এলিমেন্টের প্যারেন্ট এলিমেন্টকে আহ্বান করে এবং বোতামে ক্লিক করার সময় এটির (অভিভাবক) নোডের নাম প্রদর্শন করে।
HTML কোড
< html >
< শরীর >
< h1 > জাভাস্ক্রিপ্টে প্যারেন্ট এলিমেন্ট প্রপার্টি < / h1 >
< h2 > ভাষা নির্বাচন করুন: < / h2 >
< নির্বাচন করুন ক্লাস = 'উপাদান' >
< বিকল্প > পাইথন < / বিকল্প >
< বিকল্প > জাভা < / বিকল্প >
< বিকল্প > জাভাস্ক্রিপ্ট < / বিকল্প >
< / নির্বাচন করুন >
< বোতাম অনক্লিক = 'displayParent()' ক্লাস = 'বোতাম' > 'বিকল্প' এলিমেন্টের প্যারেন্ট এলিমেন্ট প্রদর্শন করুন < / বোতাম >
< div ক্লাস = 'তাপ' < / div < / শরীর >
< html >
এই কোডে:
প্রদত্ত উল্লেখ করুন '' এবং '' উপাদান যা যথাক্রমে স্তর-এক এবং স্তর-দুই শিরোনাম গঠিত।
এর পরে, একটি তৈরি করুন '<নির্বাচন>' প্রদত্ত শ্রেণী দ্বারা উপস্থাপিত উপাদান যাতে আরও শিশু উপাদান থাকে যেমন, '<বিকল্প>' .
এখন, একটি 'এর সাথে যুক্ত একটি বোতাম তৈরি করুন অনক্লিক ” ইভেন্ট যা পুনঃনির্দেশ করে 'displayParent()' বাটন ক্লিকের উপর ফাংশন।
অবশেষে, উল্লেখ করুন '' যে উপাদানটিতে ফলাফল অর্থাৎ অ্যাক্সেস করা প্যারেন্ট এলিমেন্ট প্রদর্শিত হবে।
CSS কোড
<স্টাইল
> শরীর
{ পাঠ্য-সারিবদ্ধ : কেন্দ্র ; রঙ : #fff ; পেছনের রং : ধূসর ; উচ্চতা : 100% ;
} .বোতাম
{ উচ্চতা : 2 রেম ; সীমানা-ব্যাসার্ধ : 2px ; প্রস্থ : ৩৫% ; মার্জিন : 2 রেম স্বয়ংক্রিয় ; প্রদর্শন : ব্লক ; রঙ : #ba0b0b ; কার্সার : নির্দেশক ;
} .temp
{ অক্ষরের আকার : 1.5 রেম ; হরফ-ওজন : সাহসী ;
} স্টাইল
>
উপরের CSS কোডে:
প্রয়োগ করা 'টেক্সট-সারিবদ্ধ', 'ব্যাকগ্রাউন্ড-কালার' ইত্যাদি বৈশিষ্ট্য সহ সামগ্রিক ওয়েব পৃষ্ঠা স্টাইল করুন।
একইভাবে, উচ্চতা, প্রস্থ, প্রদর্শন, রঙ, ইত্যাদি সামঞ্জস্য করে তার ক্লাসের মাধ্যমে তৈরি বোতামটিতে স্টাইলিং প্রয়োগ করুন।
অবশেষে, স্টাইল করুন ' div ” এর ক্লাসের নাম উল্লেখ করে যেখানে অ্যাক্সেস করা মূল উপাদানটি প্রদর্শিত হবে।
জাভাস্ক্রিপ্ট কোড
VIDEO
< লিপি
> ফাংশন ডিসপ্লে প্যারেন্ট
( ) { ছিল পাওয়া = নথি
querySelector ( '. উপাদান' ) ; ছিল এই
= পাওয়া .
বিকল্প [ পাওয়া .
নির্বাচিত সূচক ] ; ছিল সংযোজন
= নথি
querySelector ( '.temp' ) ; সংযোজন
innerHTML = 'বিকল্প উপাদানের মূল উপাদান হল ->' + এই.
প্যারেন্ট এলিমেন্ট .
নোড নেম ;
}
লিপি
>
এই কোড লাইন অনুযায়ী:
ফাংশন সংজ্ঞায়িত করুন 'displayParent()' যেটি '' এলিমেন্ট অ্যাক্সেস করে তার ক্লাসের মাধ্যমে উল্লেখ করে 'document.querySelector()' পদ্ধতি
দ্য ' বিকল্প ' সংগ্রহটি ড্রপ-ডাউন তালিকার সমস্ত '' উপাদানগুলির সংগ্রহ এবং ' নির্বাচিত সূচক ” সম্পত্তি ড্রপ-ডাউন তালিকার জন্য নির্বাচিত বিকল্পের সূচক পুনরুদ্ধার করে।
অবশেষে, ব্যবহার করুন 'document.querySelector()' পদ্ধতিটি আবার '' উপাদানটি অ্যাক্সেস করতে এবং প্রয়োগ করা 'এর মাধ্যমে '
' উপাদানের মূল উপাদানের সাথে যুক্ত করুন। প্যারেন্ট এলিমেন্ট ' এবং ' নোড নেম ” (প্যারেন্ট নোডের নাম প্রদর্শন করে) বৈশিষ্ট্য।
সম্পূর্ণ কোড
< html >
< শরীর >
< h1 > জাভাস্ক্রিপ্টে প্যারেন্ট এলিমেন্ট প্রপার্টি < / h1 >
< h2 > ভাষা নির্বাচন করুন: < / h2 >
< নির্বাচন করুন ক্লাস = 'উপাদান' >
< বিকল্প > পাইথন < / বিকল্প >
< বিকল্প > জাভা < / বিকল্প >
< বিকল্প > জাভাস্ক্রিপ্ট < / বিকল্প >
< / নির্বাচন করুন >
< বোতাম অনক্লিক = 'displayParent()' ক্লাস = 'বোতাম' > 'বিকল্প' এলিমেন্টের প্যারেন্ট এলিমেন্ট প্রদর্শন করুন < / বোতাম >
< div ক্লাস = 'তাপ' < / div < / শরীর >
< শৈলী > শরীর{ পাঠ্য-সারিবদ্ধ: কেন্দ্র; রঙ:#fff; ব্যাকগ্রাউন্ড-রঙ: ধূসর; উচ্চতা: 100%; } .বোতাম{ উচ্চতা: 2rem; সীমানা-ব্যাসার্ধ: 2px; প্রস্থ: 35%; মার্জিন: 2rem অটো; প্রদর্শন ব্লক; রঙ:#ba0b0b; কার্সার:পয়েন্টার; } .temp{ ফন্ট-আকার: 1.5rem; ফন্ট-ওজন:বোল্ড; } < / শৈলী >
< লিপি > ফাংশন displayParent() { var get = document.querySelector(.'elem'); var sel=get.options[get.selectedIndex]; var append = document.querySelector(.temp'); append.innerHTML='প্যারেন্ট এলিমেন্ট অফ অপশন এলিমেন্ট হল -> ' + sel.parentElement.nodeName; }
< / লিপি >
আউটপুট
এখানে, এটি দেখা যাবে যে সমস্ত চাইল্ড নোডের মূল উপাদান অর্থাৎ, ড্রপডাউন থেকে নির্বাচিত বিকল্পটি '<বিকল্প>' উপাদান প্রত্যাবর্তন করা হয় যেমন, ' নির্বাচন করুন ”
উদাহরণ 2: জাভাস্ক্রিপ্টে 'প্যারেন্ট এলিমেন্ট' এবং 'শিশু' বৈশিষ্ট্যগুলির মাধ্যমে পিতামাতা এবং শিশু উভয় উপাদান অ্যাক্সেস করা
নিম্নলিখিত কোড উদাহরণ একটি নির্দিষ্ট উপাদানের পিতামাতা এবং শিশু উভয় উপাদান অ্যাক্সেস করে।
HTML কোড
< html > < শরীর > < div আইডি = 'পিতামাতা' > < div আইডি = 'শিশু' > < h1 >প্রথম শিশু উপাদান< / h1 > < h1 >দ্বিতীয় শিশু উপাদান< / h1 > < / div > < / div > < / শরীর > < / html > এই কোড ব্লকে, দুটি '
' উপাদান তৈরি করুন এবং পরবর্তী '
' এলিমেন্টের চাইল্ড এলিমেন্টের উল্লেখ করে দুটি '
' এলিমেন্ট তৈরি করুন।
জাভাস্ক্রিপ্ট কোড
< লিপি
> দিন
পাওয়া = নথি
getElementById ( 'শিশু' ) ; অভিভাবক যাক
= পাওয়া .
প্যারেন্ট এলিমেন্ট ; কনসোল
লগ ( 'অভিভাবক উপাদান ->' , অভিভাবক
outerHTML ) ; কনসোল
লগ ( 'প্যারেন্ট এলিমেন্ট নোডের নাম ->' , অভিভাবক
নোড নেম ) ; শিশুদের যাক
= পাওয়া .
শিশু ; জন্য ( যাক আমি
= 0 ; i
< শিশুদের
দৈর্ঘ্য ; i
++ ) { কনসোল
লগ ( `শিশু উপাদান $
{ i
} : `
, শিশু
[ i
] .
outerHTML ) ;
}
জন্য ( যাক আমি
= 0 ; i
< শিশুদের
দৈর্ঘ্য ; i
++ ) { কনসোল
লগ ( `চাইল্ড এলিমেন্ট নোডের নাম $
{ i
} : `
, শিশু
[ i
] .
নোড নেম ) ;
}
লিপি
>
উপরের কোডের ব্যাখ্যা নিম্নরূপ:
পরবর্তী “” উপাদানটিকে এর “id” ব্যবহার করে অ্যাক্সেস করুন
'document.getElementById()' পদ্ধতি এবং 'এর মাধ্যমে এর মূল উপাদান আনুন
প্যারেন্ট এলিমেন্ট 'সম্পত্তি।
এখন, অ্যাট্রিবিউট সহ প্যারেন্ট এলিমেন্ট প্রদর্শন করুন এবং প্রয়োগের মাধ্যমে শুরু এবং শেষ ট্যাগগুলি দেখান outerHTML 'সম্পত্তি।
এছাড়াও, প্যারেন্ট এলিমেন্টের নাম যেমন, নোডের নাম ' ব্যবহার করে ফেরত দিন নোড নেম 'সম্পত্তি।
এর পরে, 'শিশুদের' সম্পত্তি ব্যবহার করে উপাদানের শিশুদের অ্যাক্সেস করুন।
প্রয়োগ করুন ' জন্য সমস্ত চাইল্ড এলিমেন্টের পুনরাবৃত্তি করতে লুপ করুন এবং আলোচিত 'outerHTML' প্রপার্টির মাধ্যমে ট্যাগ সহ ফেরত দিন।
একইভাবে, চাইল্ড এলিমেন্টের নোডের নাম ফেরত দিতে আবার 'for' লুপ ব্যবহার করুন।
সম্পূর্ণ কোড
VIDEO
< html > < শরীর > < div আইডি = 'পিতামাতা' > < div আইডি = 'শিশু' > < h1 > প্রথম শিশু উপাদান
< / h1 > < h1 > দ্বিতীয় শিশু উপাদান
< / h1 > < / div > < / div >
< / শরীর >
< / html >
< লিপি > let get = document.getElementById('child');
let parent = get.parentElement;
console.log('প্যারেন্ট এলিমেন্ট -> ', parent.outerHTML);
console.log('প্যারেন্ট এলিমেন্ট নোডের নাম -> ', parent.nodeName);
let Children = get.children;
জন্য (আসুন আমি =0; i
< children.length; i++ ) {
console.log ( `শিশু উপাদান $ { i } : `, শিশু [ i ] .outerHTML ) ;
}
জন্য ( যাক আমি = 0 ; i < children.length; i++ ) {
console.log ( `চাইল্ড এলিমেন্ট নোড নাম $ { i } : `, শিশু [ i ] .নোড নেম ) ;
}
< / লিপি >
আউটপুট
এই ফলাফলটি বোঝায় যে লক্ষ্য উপাদানটির পিতামাতা এবং শিশু উপাদানগুলি সেই অনুযায়ী বিস্তারিতভাবে (নোডের নাম সহ) প্রদর্শিত হয়।
উদাহরণ 3: 'প্যারেন্টনোড' প্রপার্টি ব্যবহার করে প্যারেন্ট এলিমেন্ট অ্যাক্সেস করা
এই প্রদর্শনীতে, একটি নির্দিষ্ট উপাদানের মূল উপাদানটি আহ্বান করা যেতে পারে এবং তারপরে এই নির্দিষ্ট উপাদানটির মূল উপাদানটিও আনা হবে যার ফলে একটি নেস্টেড আচরণ হবে। এটি 'এর মাধ্যমে অর্জন করা যেতে পারে প্যারেন্ট নোড ' এর পরিবর্তে বৈশিষ্ট্য যা উপাদানটির মূল নোড নিয়ে আসে।
HTML কোড
< html > < শরীর > < div আইডি = 'পিতামাতা' > < ol আইডি = 'তাপ' > < যে আইডি = 'টেম্পশিল্ড' >পাইথন< / যে > < যে >জাভা< / যে > < যে >জাভাস্ক্রিপ্ট< / যে > < / ol > < / div > < / শরীর > < / html > এখানে, একটি '
' উপাদান তৈরি করুন যাতে প্রদত্ত আইডি সহ '
(অর্ডার করা তালিকা)' এবং '(তালিকা আইটেম)' উপাদান রয়েছে।
জাভাস্ক্রিপ্ট কোড
< লিপি > দিন পাওয়া = নথি getElementById ( 'টেমচাইল্ড' ) ; অভিভাবক যাক = পাওয়া . প্যারেন্ট নোড ; কনসোল লগ ( ''li'-> এর মূল উপাদান নোড' , অভিভাবক ) ; পেতে দিন = নথি getElementById ( 'তাপ' ) ; যাক পিতামাতা2 = get2. প্যারেন্ট নোড ; কনসোল লগ ( ''ol'-> এর প্যারেন্ট এলিমেন্ট নোড' , পিতামাতা2 ) ;
লিপি >
কোডের এই স্নিপেটের উপর ভিত্তি করে, নীচের প্রদত্ত পদক্ষেপগুলি সম্পাদন করুন:
'এর মাধ্যমে ' ' উপাদানটি আহ্বান করুন getElementById() ' পদ্ধতি, ' ব্যবহার করে এর মূল উপাদানের নোড অ্যাক্সেস করুন প্যারেন্ট নোড ” সম্পত্তি, এবং প্যারেন্ট নোড প্রদর্শন করুন।
একইভাবে, এখন একই পদ্ধতির পুনরাবৃত্তি করে প্রদর্শিত প্যারেন্ট নোডের অর্থাৎ “” প্যারেন্টকে আহ্বান করুন।
সম্পূর্ণ কোড
< html > < শরীর > < div আইডি = 'পিতামাতা' > < ol আইডি = 'তাপ' > < যে আইডি = 'টেম্পশিল্ড' > পাইথন < / যে > < যে > জাভা < / যে > < যে > জাভাস্ক্রিপ্ট < / যে > < / ol > < / div >
< লিপি > let get = document.getElementById('tempchild'); let parent = get.parentNode; console.log(''li'->' এর প্যারেন্ট এলিমেন্ট নোড, প্যারেন্ট); let get2 = document.getElementById('temp'); let parent2 = get2.parentNode; console.log(''ol'->' এর প্যারেন্ট এলিমেন্ট নোড, parent2);
< / লিপি > < / শরীর >
< / html >
আউটপুট
এই ফলাফলটি নির্দেশ করে যে উভয় ক্ষেত্রেই প্যারেন্ট নোডগুলি সেই অনুযায়ী প্রদর্শিত হয়।
উপসংহার
মূল উপাদানটি HTML DOM ব্যবহার করে অ্যাক্সেস করা যেতে পারে “ প্যারেন্ট এলিমেন্ট 'এর সাথে মিলিত সম্পত্তি ' নোড নেম ' সম্পত্তি বা 'প্যারেন্টনোড' সম্পত্তির মাধ্যমে প্যারেন্ট নোড পুনরুদ্ধার করা। যাইহোক, পরিবর্তে চাইল্ড উপাদান অ্যাক্সেস করতে, ' শিশু 'সম্পত্তি।