উত্তর:
সমস্ত প্রযুক্তির মতো এটিরও উত্থান-পতন রয়েছে। আপনি যদি সঠিকভাবে বিকাশযুক্ত সাইটের আশেপাশের জন্য যদি একটি আইফ্রেম ব্যবহার করে থাকেন তবে অবশ্যই এটি খারাপ অভ্যাস। তবে কখনও কখনও একটি iframe গ্রহণযোগ্য।
বুকমার্ক এবং নেভিগেশনের সাথে ইফ্রামের সাথে প্রধান সমস্যাগুলির একটি। আপনি যদি আপনার সামগ্রীর ভিতরে কোনও পৃষ্ঠা এম্বেড করার জন্য এটি ব্যবহার করে থাকেন তবে আমার মনে হয় এটি ঠিক আছে। এটিই কি ইফ্রামের জন্য।
তবে আমি দেখেছি আইফ্রেমেসগুলিও আপত্তিজনকভাবে ব্যবহার করা হয়েছে। এটি কখনই আপনার সাইটের অবিচ্ছেদ্য অংশ হিসাবে ব্যবহার করা উচিত নয়, তবে কোনও সাইটের মধ্যে সামগ্রীর অংশ হিসাবে।
সাধারণত, যদি আপনি এটি কোনও আইফ্রেম ছাড়াই করতে পারেন তবে এটি একটি ভাল বিকল্প। আমি নিশ্চিত যে এখানে অন্যদের কাছে আরও তথ্য বা আরও সুনির্দিষ্ট উদাহরণ থাকতে পারে, এটি সমস্ত সমস্যার সমাধান করার চেষ্টা করছেন to
এর সাথে বলা হয়েছে, আপনি যদি এইচটিএমএল এর মধ্যে সীমাবদ্ধ থাকেন এবং পিএইচপি বা এএসপি.এনইটি ইত্যাদির মতো ব্যাকএন্ডে অ্যাক্সেস না পান তবে কখনও কখনও আইফ্রেমে আপনার একমাত্র বিকল্প হয়।
window.postMessage()
, উদাহরণস্বরূপ সহযোগী iframe অটো-রাইজিং বাস্তবায়ন করতে।
তারা খারাপ অনুশীলন নয়, তারা কেবল অন্য একটি সরঞ্জাম এবং তারা নমনীয়তা যুক্ত করে।
স্ট্যান্ডার্ড পৃষ্ঠার উপাদান হিসাবে ব্যবহারের জন্য ... তারা ভাল, কারণ তারা বেশ কয়েকটি পৃষ্ঠায় সামগ্রী আলাদা করার সহজ এবং নির্ভরযোগ্য উপায়। বিশেষত ব্যবহারকারীর দ্বারা উত্পাদিত সামগ্রীর জন্য, "স্যান্ডবক্স" অভ্যন্তরীণ পৃষ্ঠাগুলি iframe
এত দুর্বল মার্কআপে কার্যকর হতে পারে যা মূল পৃষ্ঠাকে প্রভাবিত করে না। খারাপ দিকটি হ'ল আপনি যদি স্ক্রলিংয়ের একাধিক স্তর (ব্রাউজারের জন্য একটি, এর জন্য একটি iframe
) প্রবর্তন করেন তবে আপনার ব্যবহারকারীরা হতাশ হবেন। অ্যাডজম যেমন বলেছিল, আপনি iframe
প্রাথমিক নেভিগেশনের জন্য কোনও ব্যবহার করতে চান না , তবে তাদের কোনও ভিডিও বা অন্য কোনও মিডিয়া ফাইল এম্বেড করা হবে তার সমতুল্য একটি পাঠ্য / মার্কআপ হিসাবে ভাবেন।
স্ক্রিপ্টিং ব্যাকগ্রাউন্ড ইভেন্টগুলির জন্য পছন্দটি সাধারণত কোনও লুকানো iframe
এবং XmlHttpRequest
বর্তমান পৃষ্ঠার জন্য সামগ্রী লোড করার মধ্যে থাকে। পার্থক্যটি হ'ল iframe
কোনও পৃষ্ঠা লোড উত্পন্ন করে, তাই আপনি বেশিরভাগ ব্রাউজারগুলির সাহায্যে ব্রাউজার ক্যাশে পিছনে এবং এগিয়ে যেতে পারেন। লক্ষ্য করুন যে গুগল, যারা XmlHttpRequest
সমস্ত জায়গা জুড়ে ব্যবহার করে, কোনও iframe
ক্ষেত্রে ব্যবহারকারীকে ব্রাউজারের ইতিহাসে পিছনে এবং এগিয়ে যেতে দেয় এমন কিছু ক্ষেত্রেও এটি ব্যবহার করে ।
তাদের ত্রুটিগুলি না বুঝে এগুলি ব্যবহার করা 'খারাপ অভ্যাস'। অ্যাডজম পোস্টটি তাদের খুব ভাল পরিমাণে যোগ করে।
ফ্লিপসাইডে, জিমেইল এর কয়েকটি শীতল বৈশিষ্ট্যগুলির জন্য পটভূমিতে আইফ্রেমগুলির ভারী ব্যবহার করে (যেমন স্বয়ংক্রিয় ফাইল আপলোডের মতো)। আপনি যদি আইফ্রেমগুলির সীমাবদ্ধতা সম্পর্কে সচেতন হন তবে আমি বিশ্বাস করি না যে সেগুলি ব্যবহার সম্পর্কে আপনার কোনও বোধ অনুভব করা উচিত।
তাদের সাথে অনেক পরিস্থিতিতে কাজ করার পরে, আমি সত্যিই ভাবতে এসেছি যে iframe এর ওয়েব প্রোগ্রামিংটি গোটো স্টেটমেন্টের সমতুল্য। এটি হ'ল সাধারণত কিছু এড়ানো যায়। একটি সাইটের মধ্যে তারা কিছুটা কার্যকর হতে পারে। যাইহোক, ক্রস-সাইট, কন্টেন্টের সহজতম ব্যতীত কোনও কিছুর জন্য এগুলি প্রায়শই খারাপ ধারণা।
সম্ভাবনাগুলি বিবেচনা করুন ... যদি প্যারামিটারাইজড সামগ্রীর জন্য ব্যবহার করা হয় তবে তারা একটি ইন্টারফেস তৈরি করেছে। এবং একটি পেশাদার সাইটে, সেই ইন্টারফেসটির জন্য একটি এসএলএ এবং সংস্করণ পরিচালনা প্রয়োজন - যা অনলাইনে যাওয়ার জন্য প্রায় সবসময়ই তাড়াহুড়ো করে উপেক্ষা করা হয়।
যদি সক্রিয় সামগ্রীর জন্য ব্যবহৃত হয় - ফ্রেমগুলি যে হোস্ট স্ক্রিপ্ট - তবে সেখানে (পৃথক) ক্রস ডোমেন স্ক্রিপ্ট বিধিনিষেধ রয়েছে। কিছু হ্যাক হতে পারে, তবে খুব কমই ধারাবাহিকভাবে। এবং যদি আপনার ফ্রেমযুক্ত সামগ্রীর ইন্টারঅ্যাকটিভ হওয়ার দরকার হয় তবে ফ্রেম ছাড়িয়ে এটি করার জন্য লড়াই করা হবে।
যদি লাইসেন্সযুক্ত সামগ্রী সহ ব্যবহার করা হয়, তবে অংশগ্রহণকারী সাইটগুলি হোস্টগুলির মধ্যে ব্যান্ডের বাইরে এনটাইটেলমেন্ট তথ্য সরিয়ে নেওয়ার প্রয়োজনে বোঝা হয়ে থাকে।
সুতরাং, যদিও কোনও সাইটের মধ্যে অন্তর্নিহিত কার্যকর, তারা ম্যাসআপগুলিতে বরং অসমর্থিত। আপনি বাস্তব পোর্টাল এবং পোর্টলেটগুলি দেখতে আরও ভাল। সবচেয়ে খারাপ, তারা প্রতিটি ওয়েব অপেশাদারের প্রিয়তম - অনেকগুলি প্রযুক্তি ব্যবস্থাপক তাদেরকে অনেক সমস্যার সমাধান হিসাবে চুপচাপ ফেলেছেন। আসলে তারা আরও তৈরি করে।
আমার অভিজ্ঞতার উপর ভিত্তি করে তৃতীয় পক্ষের কোডগুলি কল করার সময় iframe এর পক্ষে একটি ইতিবাচক দিকটি রয়েছে, এর মধ্যে জাভাস্ক্রিপ্ট কল করা জড়িত থাকতে পারে যাতে Document.write();
কমান্ড থাকে calls আপনারা জানেন যে, এই আদেশগুলি কীভাবে পার্স করা হয় (ডম পার্সার ইত্যাদির কারণে) তত্ক্ষণাতীতভাবে কল করা যায় না। এর একটি উদাহরণ হ'ল http://sourceforge.net/projects/phpadsnew/ আমি phpadsnews- এ একাধিক কল আসার কারণে আমাদের সাইটের গতি বাড়ানোর জন্য iframes ব্যবহার করেছি এবং সাইটটি বিভিন্ন রেন্ডার করার আগে প্রতিক্রিয়াটির অপেক্ষায় ছিল পৃষ্ঠার অংশ। একটি ইফ্রামের সাহায্যে আমি সাইটের পৃষ্ঠার অন্যান্য অংশগুলি রেন্ডার করার অনুমতি দিতে সক্ষম হয়েছি এবং এখনও Document.write()
পিচপ্যাডের কমান্ডটিকে অবিচ্ছিন্নভাবে কল করতে পারি। প্রতিরোধ এবং জেএস লকিং।
অবশ্যই iframes ভাবেন জন্য ব্যবহার আছে। আপনি কীভাবে আপনার পৃষ্ঠায় আবহাওয়া নেটওয়ার্কগুলির উইজেটটি রাখবেন? আর একমাত্র উপায় হ'ল তাদের এক্সএমএল ধরে এটি পার্স করা, তবে অবশ্যই আপনার পার্টেন্টেন্ট ওয়েদার গ্রাফিক্স ছুঁড়ে ফেলার জন্য শর্ত প্রয়োজন ... সত্যিকার অর্থে এটি মূল্যবান নয়, তবে আপনার যদি সময় থাকে তবে ক্লিনার।
মূল ফ্রেমসেট মডেল (ফ্রেমসেট এবং ফ্রেম-উপাদান) ব্যবহারের দিক থেকে খুব খারাপ ছিল। আইফ্রেমে পরবর্তী কোনও আবিষ্কার যা মূল ফ্রেমসেট মডেলের মতো সমস্যা ছিল না তবে এটির অপূর্ণতা রয়েছে।
আপনি যদি ব্যবহারকারীকে আইফ্রেমের অভ্যন্তরে নেভিগেট করার অনুমতি দেন তবে লিঙ্কগুলি এবং বুকমার্কগুলি প্রত্যাশার মতো কাজ করবে না (কারণ আপনি বাইরের পৃষ্ঠার ইউআরএল বুকমার্ক করেন তবে আইফ্রেমের URL নয়)।
যখন আপনার প্রধান পৃষ্ঠাটি এইচটিটিপি প্রোটোকল এবং আপনার পৃষ্ঠার অংশগুলিতে এইচটিটিপিএস প্রোটোকলে কাজ করার দরকার পড়ে, আইফ্রেম জেসোনপকে হাতছাড়া করতে পারে।
বিশেষত, যদি আপনার ডেটা টাইপটি স্থানীয়ভাবে জসন না হয় এবং সার্ভারে জেসন ভাষায় অনুবাদ করা এবং ক্লায়েন্টে ফিরে যেমন জটিল এইচটিএমএল অনুবাদ করা প্রয়োজন।
সুতরাং না - আইফ্রেমটি মন্দ নয়।
এগুলি খারাপ নয়, তবে আসলে সহায়ক। কিছুক্ষণ আগে আমার একটি বিশাল সমস্যা হয়েছিল যেখানে আমাকে আমার টুইটার ফিড এম্বেড করতে হয়েছিল এবং এটি এমডিকে একই পৃষ্ঠায় করতে দেয় না, তাই আমি এটি একটি অন্য পৃষ্ঠাতে রেখেছি এবং এটি একটি আইফ্রেমে হিসাবে রেখেছি।
এগুলিও ভাল কারণ সমস্ত ব্রাউজারগুলি (এবং ফোন ব্রাউজারগুলি) তাদের সমর্থন করে। যতক্ষণ আপনি এগুলি সঠিকভাবে ব্যবহার করেন সেগুলিকে একটি খারাপ অনুশীলন হিসাবে বিবেচনা করা যাবে না।
এটি লক্ষণীয় যে আপনার ব্যবহারকারীদের ইন্টারনেট সংযোগের গতি বা আইফ্রেমের বিষয়বস্তু নির্বিশেষে যদি আইফ্রেমগুলি আপনার পৃষ্ঠা ডাউনলোডের গতিতে একটি ছোট (0.3 বা তার বেশি) তবে লক্ষণীয় মন্দার কারণ হয়ে উঠবে। এটি স্থানীয়ভাবে পরীক্ষার সময় আপনি দেখতে পাবেন না। আসলে, এটি কোনও পৃষ্ঠায় যুক্ত যে কোনও উপাদানগুলির জন্য সত্য, তবে আইফ্রেমগুলি আরও খারাপ বলে মনে হচ্ছে।
আমি দেখেছি আইএফআরএমগুলি ডায়নামিক প্রসঙ্গ মেনু করার সহজ উপায় হিসাবে খুব সফলভাবে প্রয়োগ হয়েছিল, কিন্তু সেই ওয়েব-অ্যাপের লক্ষ্য শ্রোতারা কেবল ইন্টারনেট এক্সপ্লোরার ব্যবহারকারী ছিল।
আমি বলব যে এটি আপনার প্রয়োজনীয়তার উপর নির্ভর করে। আপনি যদি নিশ্চিত করতে চান যে আপনার পৃষ্ঠাটি প্রতিটি ব্রাউজারে সমানভাবে ভাল কাজ করে, তবে আইফ্রেমেস এড়িয়ে চলুন। আপনি যদি সংকীর্ণ এবং সুপরিচিত শ্রোতাদের লক্ষ্য করছেন (উদাহরণস্বরূপ স্থানীয় ইন্টারানেটে) এবং আপনি যদি আইএফআরএম ব্যবহার করে কোনও সুবিধা দেখেন তবে আমি বলব এটি করা ঠিক আছে।