HTML <script> async প্রতিভা
বিবরণ ও ব্যবহার
async
প্রতিভা একটা বল্টি প্রতিভা
যদি async
প্রতিভা, স্ক্রিপ্ট পাতা পার্সিংয়ের সাথে সময়ের সাথে ডাউনলোড করা হবে এবং উপলব্ধ হলে তা তাত্ক্ষণিকভাবে বাস্ক করা হবে। স্ক্রিপ্ট সম্পূর্ণ ডাউনলোড করা হলে, পাতা পার্সিংয় বন্ধ হবে, তারপর স্ক্রিপ্ট বাস্ক করা হবে, তারপর পাতা পার্সিংয় পরবর্তী অংশকে পার্সিং করা হবে。
নোট:async
এই প্রতিভা শুধুমাত্র বাইরের স্ক্রিপ্টকে প্রয়োগ করা যায় (এবং শুধুমাত্র src প্রতিভাটি থাকলে ব্যবহার করা উচিত)
নোট:বাইরের স্ক্রিপ্টটি বাস্ক করার জন্য বিভিন্ন পদ্ধতি রয়েছে:
- যদি অ্যাসিনক্রোনাস সংযোজিত হয়: স্ক্রিপ্ট পাতা পার্সিংয়ের সাথে সময়ের সাথে ডাউনলোড করা হবে এবং উপলব্ধ হলে তা তাত্ক্ষণিকভাবে বাস্ক করা হবে (পার্সিংয় সম্পূর্ণ হলেও)
- যদি ডিফার সংযোজিত হয় (অ্যাসিনক্রোনাস না থাকলে): স্ক্রিপ্ট পাতা পার্সিংয়ের সাথে সময়ের সাথে ডাউনলোড করা হবে এবং পাতা পার্সিংয়ের সাথে সম্পূর্ণ হলে তা বাস্ক করা হবে
- যদি না অ্যাসিনক্রোনাস এবং না ডিফার থাকে: স্ক্রিপ্ট তাত্ক্ষণিকভাবে ডাউনলোড এবং বাস্ক করা হবে, পাতা পার্সিংয়ের বাধা দেবে, পর্যন্ত স্ক্রিপ্ট বাস্ক করা না হবে
উদাহরণ
উল্লিখিত স্ক্রিপ্টটি পাতা পার্সিংয়ের সাথে সময়ের সাথে ডাউনলোড করা হবে এবং উপলব্ধ হলে তা তাত্ক্ষণিকভাবে বাস্ক করা হবে:
<script src="demo_async.js" async></script>
গঠন
<script async>
অসিনক্রোনাস স্ক্রিপ্ট বাস্ক
ব্রাউজার স্ক্রিপ্ট ইলিমেন্টটির সাথে সাক্ষর হলে ডিফল্ট আচরণ হল পাতা লোড এবং স্ক্রিপ্ট বাস্ক হলেও পাতা প্রক্রিয়াকরণ থেকে বিরত থাকা। প্রত্যেক স্ক্রিপ্ট ইলিমেন্ট (তার নির্ধারিত ক্রমে) সিনক্রোনাস (স্ক্রিপ্ট লোড এবং স্ক্রিপ্ট বাস্ক হলেও অন্য কিছু করতে না দেয়) ক্রমবর্ধমানে একেকটির মধ্যে সাক্ষর হয়。
এটা স্ক্রিপ্ট প্রক্রিয়াকরণের ডিফল্ট পদ্ধতি হিসাবে, সিনক্রোনাস ক্রমিক পদ্ধতিতে কাজ করা একটা গুরুত্বপূর্ণ মূল্যবোধ। কিন্তু কিছু স্ক্রিপ্ট এইভাবে প্রক্রিয়াকরণের প্রয়োজন নেই, এমন স্ক্রিপ্টগুলির জন্য async
প্রক্রিয়াটি তার ক্ষমতা বাড়ায়।এই দিকটির একটি সাধারণ উদাহরণ হল ট্র্যাকিং স্ক্রিপ্ট (tracking script)।এই স্ক্রিপ্টগুলি ব্যবহারকারীর ওয়েবসাইট ব্যবহার রেকর্ড রিপোর্ট করতে পারে এবং বিজ্ঞাপন কোম্পানিগুলি ব্যবহারকারীর অনুশীলন অনুযায়ী বিজ্ঞাপন প্রকাশ করতে পারে, বা ওয়েবসাইট পরিদর্শকদের পরিসংখ্যান সংগ্রহ করতে পারে, এবং এমনভাবে।এই স্ক্রিপ্টগুলি স্বতন্ত্র, সাধারণত HTML ডকুমেন্টের এলিমেন্টগুলির সঙ্গে কোনও সম্পর্ক নেই।এগুলির লোড ও পরের সার্ভারে রিপোর্ট পাঠানোর জন্য পেজ প্রদর্শন করা অপযুক্ত
ব্যবহার করা হয় async
প্রক্রিয়াটির পরে, ব্রাউজার অন্য এলিমেন্ট (অন্য স্ক্রিপ্ট এলিমেন্টগুলি সহ) পার্সিং করার সময় স্ক্রিপ্টকে অসিনক্রোনাসভাবে লোড ও এক্সেকিউট করবে।যদি এটা সঠিকভাবে ব্যবহার করা হয়, তবে এটা পূর্ণাত্মকভাবে লোড প্রদর্শনকে বেশি করে উন্নীত করতে পারে。
নোট:ব্যবহার async
প্রক্রিয়াটির একটি গুরুত্বপূর্ণ পরিণাম হল পেজের স্ক্রিপ্টগুলি নির্দিষ্ট করা অনুযায়ী সাজানো হয়নি।তাই, যদি স্ক্রিপ্টগুলি অন্য স্ক্রিপ্টের দ্বারা নির্দিষ্ট ফাংশন বা মান ব্যবহার করে, তবে এটা ব্যবহার করা যোগ্য নয় async
প্রক্রিয়া
ব্রাউজার সমর্থন
তালিকায় নম্বরগুলি এই লক্ষ্য সম্পর্কে প্রথম পূর্ণাত্মকভাবে সমর্থনকারী ব্রাউজারের সংস্করণ উল্লেখ করা হয়েছে。
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
8.0 | 10.0 | 3.6 | 5.1 | 15.0 |