লোকেরা কেন এখনও আইফ্রেম ব্যবহার করে? [বন্ধ]


89

আমার জন্য iframes খাঁটি মন্দ (ভাল, সম্ভবত এত বিশুদ্ধ না)। তারা অনেক ঝামেলা করছে বলে মনে হচ্ছে। হ্যাঁ, আপনার পুরো সাইটটি একবারে লোড হবে এবং তারপরে আপনি কেবল একটি পৃষ্ঠাগুলি লোড করতে পারেন। তবে লোকেরা এজেএক্স আবিষ্কার করেছিল এই উদ্দেশ্যে।

আমি যে সবচেয়ে বড় iframeসমস্যাটি পেয়েছি তার মধ্যে একটি হ'ল আমি সাব-পৃষ্ঠাগুলির একটিতে একটি লিঙ্ক আটকাতে পারিনি, কারণ ইউআরএল কখনও পরিবর্তন হয় নি (হ্যাঁ, আমি জানি এটির জন্য একটি কার্যকারিতা রয়েছে)। দ্বিতীয় কথা, ওয়েব অনুসন্ধান ইঞ্জিনগুলির সঠিকভাবে সাইটগুলি সূচী করতে সমস্যা হতে পারে।

কখনও কখনও এই সাইটের অ্যাক্সেসযোগ্যতা খারাপ হয় এবং কিছু ব্রাউজার এমনকি এগুলি ভুলভাবে প্রদর্শন করতে পারে।

(I) ফ্রেম ছাড়াই বিন্যাসের নকশা করার আরও ভাল উপায় রয়েছে। প্রতিদিন আমি কাউকে এসও প্রশ্ন জিজ্ঞাসা করতে দেখতে পাই, যেমন "jQuery এর সাথে iframe কীভাবে অ্যাক্সেস করবেন?" Like

সুতরাং iframes সুবিধা কি? এখনও এগুলি ব্যবহার করার কী কারণ হতে পারে? আমি শুধু জানতে চাই কেন :)

(যেহেতু এটি আসল প্রশ্ন নয়, এটি একটি সিডব্লিউ)


আমি উপরে মোশির সাথে একমত। ইফ্রেমসের কেবলমাত্র অন্য ব্যবহারের জন্য হ'ল: প্রাচীন ওয়েব ক্লায়েন্টগুলি যা আধুনিক সিএসএস সমর্থন করে না বা কোনও মালিকানাধীন পরিবেশে নেই।
বরিস হামানভ

আজকাল, দুর্ভাগ্যক্রমে, প্রতিটি ব্রাউজারের একটি সামঞ্জস্যতা সমস্যা আছে! তারা মান না! ডিভি ট্যাগের একটি সমস্যা আছে, টেবিল ট্যাগের সমস্যা আছে এবং এই জাতীয় ... তারা একটি 100% সামঞ্জস্যপূর্ণ ওয়েবসাইট ডিজাইন করার জন্য আমাদের সময় হারাবে। এমনকি আই 7 এর সাথে কোনও ওয়েবসাইটকে সামঞ্জস্যপূর্ণ করার চূড়ান্ত উপায়। একটি iframe ব্যবহার করা হয়। iframe প্রতিটি সমস্যার প্যাচ করতে পারে: '(আপনি যদি আমার ওয়েবসাইটের অবস্থাটি পরীক্ষা করেন তবে আপনি
আই 7 এর

উত্তর:


102

আমি 2 টি কারণ (এই মুহুর্তে) ভাবতে পারি কেন লোকেরা এখনও এজেএক্সের পরিবর্তে আইফ্রেম ব্যবহার করবে:

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

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

আপনি কি জানেন যে জিমেইলটি আইফ্রেমের একটি সেট? দৃশ্যমান অংশটি কেবল চতুর অবস্থানের। অধিকন্তু, অনেক OAuth বাস্তবায়ন (টুইটার, ফেসবুক, গুগল, ইয়াহু!) সাধারণত একটি সফল প্রমাণীকরণ URL- এর সাথে ব্যবহারকারীকে তাদের ডোমেনের সাথে যুক্ত করতে iframes ব্যবহার করে (ব্যবহারকারী লগ ইন করার পরে)।


4
পুনরায় # 1, তবে এইচটিটিপি শিরোনাম যদি
ইফ্রেমে

4
পুনরায় # 2, তবে আপনি এটি iframe ছাড়াই করতে পারেন, উদাহরণস্বরূপ<embed src="http://www.pdf995.com/samples/pdf.pdf" type="application/pdf">
পেসারিয়ার

4
পুনরায় # 3, জিফ্রেমে আইফ্রেম ছাড়াই আবার লেখা যেতে পারে। তাহলে কেন লোকেরা এখনও আধুনিক ব্রাউজারগুলির জন্য iframes ব্যবহার করে? প্রশ্নটি উত্তরহীন রেখে গেছে।
পেসারিয়ার

22

আইএফআরএমগুলি তৃতীয় পক্ষের সামগ্রী কোনও ওয়েবসাইটে এম্বেড এবং বিচ্ছিন্ন করতে ব্যবহৃত হয়।

বেশিরভাগ ওয়েব বিজ্ঞাপন সমাধানগুলি আইফ্রেমের উপর ভিত্তি করে - কারণ তারা সুরক্ষা দেয় (ক্রস-ডোমেন নীতি) এবং স্ক্রিনে বিচ্ছিন্ন আয়তক্ষেত্র যা তৃতীয় পক্ষের সামগ্রী এবং স্ক্রিপ্টিং (একটি সাধারণ ব্যবহারের ক্ষেত্রে বিজ্ঞাপন হয়) দ্বারা পুরোপুরি পরিচালনা করা যায়।

আইএফআরএমএস-এর আর একটি আধুনিক ব্যবহার হ'ল এজেএক্স অ্যাপ্লিকেশনগুলির ইতিহাস (সাধারণ ব্যাক বোতাম workaround) পরিচালনা।

ফ্রেমগুলি আইফ্রেমেসের দুর্বল সংস্করণ। তাদের ব্যবহার হ্রাস পাচ্ছে।


4
এটি অনেক সহজ এবং বিজ্ঞাপনগুলির একটি ভাল উদাহরণ :)
ওয়ালওয়ার্ড

15

যদি কোনও ব্যবহারকারীর জাভাস্ক্রিপ্ট অক্ষম থাকে তবে আইজ্রামগুলি যখন এজ্যাক্স না করে তখন কাজ করবে। লোকেরা নোস্ক্রিপ্টের মতো জিনিস ব্যবহার করে বিবেচনা করে এটি প্রশ্নের বাইরে নয় ।


4
এটি সত্য, তবে আইফ্রেমে পরিবর্তন / যুক্ত / ম্যানিপুলেট করার জন্য বেশিরভাগ ক্ষেত্রে জাভাস্ক্রিপ্টের প্রয়োজন হয় (2 টি বাদে আমি লক্ষ্যমাত্রাগুলির সাথে সংযুক্ত হয়ে লক্ষ্যগুলিতে <form>পোস্ট করতে পারি)।
ড্যান বিম

ডান; তবুও, জেএস ব্যবহারের ক্ষেত্রে আইফ্রেমে পয়েন্টগুলি পরিবর্তন করার জন্য সাধারণত একটি লাইন প্রয়োজন, এর বৃহত্তর জটিলতার বিপরীতে XMLHttpRequest
রিইনারিয়ান

7

পৃষ্ঠাগুলি পুনরায় লোড না করে যখন ফাইলগুলি আপলোড করার দরকার হয় তখন আমি এজ্যাক্স ওয়েবসাইটে এগুলি ব্যবহার করি।


@ মুইজাক আজাক্সকে কৌনিক সহ সকল প্রকারের জাভাস্ক্রিপ্টের কভার করতে হবে।
কোডআরপি

3

আমি এখনও বড় কর্পোরেশনগুলিতে আইফ্রেমগুলি ব্যবহার করা দেখছি যেখানে তারা একটি একক চিহ্ন প্রদান করে যা সত্যায়িত ব্যবহারকারীর সম্পর্কে শিরোনামের তথ্যকে ইনজেকশন দেয় যা একটি আইফ্রেমের মাধ্যমে প্রকৃত অ্যাপ্লিকেশন (গুলি) এর দিকে প্রেরণ করা হয়। যেহেতু "পোর্টাল" আইফ্রেমের চারপাশে সমস্ত নির্দিষ্ট প্রমাণীকরণের বিশদটি পরিচালনা করে তার পিছনে থাকা সমস্ত অ্যাপ্লিকেশনগুলির জন্য এটির প্রতিটি প্রয়োগকরণের প্রয়োজন হয় না, বিকাশকারী দলের পক্ষে তৈরি করা জিনিসগুলিকে আরও সহজ করে তোলে এবং প্রমাণীকরণের বিশদটি নিরীক্ষণ ও সমন্বয় করার জন্য একটি জায়গা থাকতে পারে ব্যবহারকারীদের।


আপনি কেন XMLHttpRequest ( w3.org/TR/XMLHttpRequest/#the-setrequestheader- স্মারক ) এর সাথে শিরোনাম যুক্ত করতে পারবেন না তা দেখতে পাবেন না যদি না ডোমেন, প্রোটোকল এবং পোর্টগুলি মেলে না (যার অর্থ আপনার থেকে আলাদা সমস্যা আছে শিরোনাম)?
ড্যান বিম

মূল বিষয় হচ্ছে এটি 2 টি পৃথক অ্যাপ্লিকেশন, সাধারণত 2 সম্পূর্ণ ভিন্ন প্রযুক্তি। একটি প্রমাণীকরণ হ্যান্ডেল করে এবং অপরটি প্রমাণীকরণের টিকিটের জন্য ইনজেকশনের শিরোনামগুলিকে আঁকড়ে ধরে (বা যখন প্রয়োজন হয় তখন এটি তৈরি করে)।
ক্রিস ভ্যান ডের মাস্ট

3

এগুলি ব্যবহার করার জন্য প্রচুর প্রযুক্তিগত কারণ রয়েছে (বিশেষত ড্যান বিম দ্বারা বর্ণিত সুরক্ষা সমস্যা)।

আপনার যা করা উচিত নয় তা হ'ল আইফ্রেমে "ফ্রেমের মতো" ব্যবহার করা, কেবল আইফ্রেমে আপডেট করে নতুন পৃষ্ঠাগুলিতে নেভিগেশন করা। আপনি যেমনটি বলেছেন, এটি নেভিগেশনটিকে বুকমার্কযোগ্য / লিঙ্কযোগ্য, সাধারণ নেভিগেশন বোতামগুলিতে প্রতিক্রিয়া জানাতে এবং ওপেন-ইন-নতুন-ট্যাবের মতো দরকারী লিঙ্ক অ্যাওয়ারেন্স সরবরাহ থেকে বাধা দেয়।

তবে ইফ্রেমেসের কাছে এটি অদ্ভুত নয়। আপনি আরও বেশি পৃষ্ঠা দেখতে পাবেন যেখানে ন্যাভিগেশনটি নতুন কন্টেন্টটি XMLHttpRequestএনে এনে মূল বিষয়বস্তু ডিভের লিখিত করে তৈরি করা হয় innerHTML। প্রায়শই এটি jQuery load()এবং চতুর-চালাক স্লাইডি অ্যানিমেশন সহ করা হয়। এটি নেভিগেশন ঠিক ততটা খারাপভাবে ইফ্রেম-ব্যবহৃত-হিসাবে-ফ্রেম, বা সত্যিকারের পুরানো-স্কুল ফ্রেমসেটগুলিকে ভেঙে দেয়। এটি একটি লজ্জার বিষয় যে এতগুলি ওয়েব লেখক এই কৌশলটি এটি একটি আধুনিক-আধুনিক ওয়েব ডিজাইন পদ্ধতি হিসাবে বিশ্বাস করে ব্যবহার করছেন, যখন এটি সত্যিকার অর্থে গতকালের অবজ্ঞাত ফ্রেমসেটগুলিতে কেবল একটি নতুন ত্বক।

আপনি উভয় ক্ষেত্রে এটি চারপাশে কাজ করতে পারেন, তবে এর অর্থ আপনাকে #খণ্ড শনাক্তকারী অংশে একটি ভিউস্টেট সংরক্ষণ করতে হবে এবং যথাযথ হ্যাশ-নেভিগেশন সমর্থন করতে হবে, যা তুচ্ছ নয়। তারপরেও আপনার এখনও অনুসন্ধান ইঞ্জিনগুলির মতো জেএস-অ-এজেন্টগুলির সাথে সমস্যা হয়েছে; উভয়কে সমর্থন করার জন্য আপনার সমান্তরাল ?ভিত্তিক এবং #ভিত্তিক নেভিগেশন থাকতে হবে। এটি একটি ব্যথা এবং সবচেয়ে বিরক্ত করবেন না।


এইচটিএমএল 5-এ হিস্ট্রি এপিআইয়ের অপেক্ষায় থাকুন, যা ব্যাক / ফরোয়ার্ড বোতামটি লোড না করে বা না ভেঙে সামগ্রী আনতে অনুমতি দেয় allow
মিথ্যা রায়ান

2

ফ্রেমসেটগুলি এইচটিএমএল 5 হিসাবে পুরানো হয় এবং কখনও কখনও আপনার কোনও সাইটের মধ্যে অন্য সাইটের সাথে ফ্রেম থাকা প্রয়োজন। এছাড়াও এজেএক্স কেবল এত কিছু করতে পারে। কোনও আইফ্রেম ছাড়াই https এর মাধ্যমে অন্য ডোমেনের একটি সাইটে একটি ফাইল আপলোড করার চেষ্টা করুন। AJAX আপনাকে সেখানে সাহায্য করবে না।


2

অন্যের কারণ ছাড়াও, iframeআমার অ্যাপ্লিকেশনটিতে আমার একটি নির্দিষ্ট ব্যবহার রয়েছে । দুর্ভাগ্যক্রমে, আমার ক্ষেত্রে লক্ষ্য ব্রাউজারটি Internet Explorer 6। আমার একটি ফুটার এবং একটি হেডার থাকা দরকার যা আমার ওয়েব পৃষ্ঠাগুলিতে স্থির থাকে। এই পৃষ্ঠার মূল অংশটি স্ক্রোলযোগ্য।

তবে, আই 6 এ একটি বাগ রয়েছে যেখানে আমি সিএসএস সম্পত্তি ব্যবহার করে উপাদানগুলির divশীর্ষে কোনও উপাদান প্রদর্শন করতে পারি না । সুতরাং, আমার এই সমস্যাটি এড়াতে হ্যাক হিসাবে ব্যবহৃত হবে এমন একটি তৈরি করা দরকার ।selectz-indexiframe

অবশ্যই এটি সত্যই নির্দিষ্ট ব্যবহার iframeএবং কেবল উদ্বেগের IE6...


1

জাভাস্ক্রিপ্ট WYSIWYG সম্পাদকরা আইফ্রেমেস ব্যবহার করেন কারণ এটি এটির সহজতম এবং সর্বোত্তম উপায়। উদাহরণস্বরূপ টিনিএমসিই এটি ব্যবহার করে:

http://tinymce.moxiecode.com/


1

আমি একটি সোশ্যাল নেটওয়ার্ক তৈরি করছিলাম এবং আমি দেখি যে আইফ্রেমগুলি মিনি প্রোফাইলের মতো দেখানোর জন্য বা দূরবর্তী সার্ভারে সামগ্রীর সাথে সংহত করার জন্য উইজেটগুলি অন্য লোকের ওয়েবসাইটগুলিতে রাখার জন্য দরকারী being এটি নির্মাণের সর্বাধিক সহজ উপায় বলে মনে হচ্ছে। আমি জানি কিছু উইজেট জাভাস্ক্রিপ্ট ব্যবহার করে। এছাড়াও iframe পদ্ধতিতে সেশনটি স্বাভাবিকের মতো সাইটটিতে পরিদর্শন করার সমান, বোতামগুলির মতো তাই দুর্দান্ত।


0

অনেক ফরমেটেড টেক্সট এডিটর (যেমন টিনিএমসিই, এইচটিএমএলরিয়া) ইফ্রেমে হিসাবে প্রয়োগ করা হয়।


এটি ফায়ারফক্স আইআইআরসি এর কারণ।
অ্যালেক্স

0

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

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