কীভাবে আইফ্রেমে লিঙ্কটি প্যারেন্ট উইন্ডোতে খুলতে বাধ্য করা যায় force


359

আমার লিঙ্কটি নতুন পৃষ্ঠায় না খোলার পরিবর্তে একই প্যারেন্ট পৃষ্ঠায় খুলতে হবে।

দ্রষ্টব্য: iframeএবং পিতামাতার পৃষ্ঠাটি একই ডোমেন


উত্তর:


616

আমি খুঁজে পেয়েছি সবচেয়ে ভাল সমাধানটি ছিল বেস ট্যাগটি ব্যবহার করা । আইফ্রেমে পৃষ্ঠার মাথায় নিম্নলিখিতটি যুক্ত করুন:

<base target="_parent">

এটি পৃষ্ঠার সমস্ত লিঙ্ক প্যারেন্ট উইন্ডোতে লোড করবে। আপনি যদি নিজের লিঙ্কগুলিকে একটি নতুন উইন্ডোতে লোড করতে চান তবে ব্যবহার করুন:

<base target="_blank">

এই ট্যাগটি সমস্ত ব্রাউজারে সম্পূর্ণরূপে সমর্থিত


4
এই ভাড়া ক্রস ব্রাউজারটি কীভাবে করবে?
চার্লি শ্লিয়েসার

3
@ উইলফ আমি বেশ সঠিক ছিল না:;) কোনওটির <base target>আগেই আসা উচিত <a href>, যেহেতু এটি নিম্নলিখিত লিঙ্কগুলির জন্য ডিফল্ট ব্রাউজিং প্রসঙ্গ নির্ধারণ করে; <base href>যে কোনও ইউআরএল রেফারেন্সের আগে আসতে হবে ( <* href> <* src> <form action> <object data>…) যেহেতু এটি বেস URL নির্ধারণ করে যার বিরুদ্ধে আপেক্ষিক URL গুলি সমাধান করা হয়।
সাম

5
কেন আমি এই প্রশ্নের সঠিক উত্তর দিয়ে এক বছর পরে এই প্রশ্নের উত্তর দিয়েছি? তবে তোমাকে বাছাই করা হয়েছিল এটি খুব আশ্চর্যজনক।
vsync

5
আমি মনে করি কারণ এটি আপনার উত্তরটি একটি নতুন উইন্ডোটিতে লিঙ্কটি খোলে, যেখানে আমার এটি আইফ্রেমের মূল উইন্ডোতে খোলে যা মূল প্রশ্ন ছিল। তোমার বজ্র চুরি করে দুঃখিত!
ক্রিস ভাসেলি

1
লক্ষ্য করুন <baseট্যাগ স্পেসিফিকেশন অনুযায়ী কোন ক্লোজিং হয়েছে w3.org/TR/html5/document-metadata#the-base-element তাই এটি হওয়া উচিত<base target="_parent" >
মার্ক Schultheiss

147

লক্ষ্য-বৈশিষ্ট্য ব্যবহার করুন:

<a target="_parent" href="http://url.org">link</a>

1
আমি এটি চেষ্টা করে দেখি, নতুন উইন্ডোতে খোলা আছে
হাইম এভগি

3
আমার কাছ থেকে +1, বেস টার্গেট = "_ পিতামাতা" কাজ করে তবে লক্ষ্য = "_ পিতামাতা" কখনও আমার পক্ষে ব্যর্থ হয় নি!

7
<base target="_blank">ঠিক আছে, তবে এখানে প্রশ্নটি একটি লিঙ্ক সম্পর্কিত, iframe- এ সমস্ত লিঙ্কের আচরণ পরিবর্তন সম্পর্কে নয়। আমার জন্য এটি সঠিক উত্তর।
kriskodzi

34

জাভাস্ক্রিপ্ট সহ:

window.parent.location.href= "http://www.google.com";

28

আপনি যে কোনও বিকল্প ব্যবহার করতে পারেন

শুধুমাত্র পিতামাতার পৃষ্ঠার ক্ষেত্রে:

আপনি যদি সমস্ত লিঙ্কটি প্যারেন্ট পৃষ্ঠায় বা পিতামাতার আইফ্রেমে খুলতে চান , তবে আপনি যদি iframe এর প্রধান বিভাগে নিম্নলিখিত কোডগুলি ব্যবহার করেন:

<base target="_parent" />

অথবা

আপনি যদি প্যারেন্ট পৃষ্ঠায় বা পিতামাতার আইফ্রেমে কোনও নির্দিষ্ট লিঙ্কটি খুলতে চান তবে আপনি নিম্নলিখিত উপায়টি ব্যবহার করুন:

<a target="_parent" href="http://specific.org">specific Link</a>
<a  href="http://normal.org">Normal Link</a>

অথবা

নেস্টেড ইফ্রেমে ক্ষেত্রে:

যদি ব্রাউজার উইন্ডোতে সমস্ত লিঙ্কটি খুলতে চান (ব্রাউজারের ইউআরএলে পুনর্নির্দেশ), তবে আপনি iframe এর প্রধান বিভাগে নিম্নলিখিত কোডগুলি ব্যবহার করুন:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript">
    $(window).load(function(){
        $("a").click(function(){
            top.window.location.href=$(this).attr("href");
            return true;
        })
    })
</script>

অথবা

আপনি যদি ব্রাউজার উইন্ডোতে নির্দিষ্ট লিঙ্কটি খুলতে চান (ব্রাউজারের ইউআরএলে পুনর্নির্দেশ), তবে আপনি নিম্নলিখিত উপায়টি ব্যবহার করুন:

<a  href="http://specific.org"   target="_top" >specific Link</a>

অথবা

<a  href="javascript:top.window.location.href='your_link'">specific Link</a>
<a  href="javascript:top.window.location.href='http://specific.org'">specific Link</a>
<a  href="http://normal.org">Normal Link</a>

1
উত্তম উত্তর, আমার এটি কেবল একটি নির্দিষ্ট লিঙ্কের জন্য ব্যবহার করা দরকার, তবুও গৃহীত উত্তরটি কেবলমাত্র কীভাবে পৃষ্ঠাটির সমস্ত লিঙ্কের লক্ষ্য পরিবর্তন করতে হবে তা বর্ণনা করে। ধন্যবাদ
তারিখ 84

15

এইচটিএমএল উপাদান রয়েছে baseযা আপনাকে এটি করার অনুমতি দেয়:

একটি পৃষ্ঠায় সমস্ত লিঙ্কের জন্য একটি ডিফল্ট URL এবং একটি ডিফল্ট লক্ষ্য নির্দিষ্ট করুন:

<base target="_blank" />

নির্দিষ্ট করে _blankআপনি নিশ্চিত করে নিলেন যে iframe এর ভিতরে থাকা সমস্ত লিঙ্কগুলি বাইরে খোলা হবে।


নেস্টেড ইফ্রেমেসে কি এই উত্তরাধিকারসূত্রে পাওয়া যায়?
beppe9000

7

উল্লিখিত হিসাবে, আপনি একটি লক্ষ্য বৈশিষ্ট্যটি ব্যবহার করতে পারেন, তবে এটি প্রযুক্তিগতভাবে এক্সএইচটিএমএল এ অবচয় করা হয়েছিল। এটি আপনাকে জাভাস্ক্রিপ্ট ব্যবহার করে ছেড়ে দেয়, সাধারণত এমন কিছু parent.window.location



@ পলডি.আপনি 404s পোস্ট করা লিংকটি ওয়েইট করুন।
ড্যান লোয়েহের্জেজ

1
@ ড্যান: আহা, হ্যাঁ আপনাকে ধন্যবাদ টাটকা লিংক: dev.w3.org/html5/spec/…
পল ডি

7

এর মধ্যে target="_parent" বৈশিষ্ট্যের চেষ্টা করুন anchor tag


আমি এটি চেষ্টা করে দেখি, নতুন উইন্ডোতে খোলা আছে
হাইম এভগি

4
লক্ষ্য = "_ শীর্ষ" চেষ্টা করুন Try আইফ্রেমে নেস্টেড ইফ্রেমেস থাকতে পারে? অথবা আসল লিঙ্কটি অনক্লিক ইভেন্টে জাভাস্ক্রিপ্ট দ্বারা খোলা হয়েছে?
জি

5

আপনি যদি নিজের ওয়েবপৃষ্ঠায় iframe ব্যবহার করে থাকেন তবে iframe থেকে এইচটিএমএল হাইপারলিঙ্ক (অ্যাঙ্কর ট্যাগ) এর মাধ্যমে পুরো পৃষ্ঠাটি পরিবর্তন করার সময় আপনি একটি সমস্যার মুখোমুখি হতে পারেন। এই সমস্যাটি প্রশমিত করার জন্য দুটি সমাধান রয়েছে।

সমাধান 1. আপনি নীচের উদাহরণে দেওয়া হিসাবে অ্যাঙ্কর ট্যাগের টার্গেট অ্যাট্রিবিউট ব্যবহার করতে পারেন।

<a target="_parent" href="http://www.kriblog.com">link</a>

সমাধান ২. আপনি জাভাস্ক্রিপ্ট সহ আইফ্রেমে থেকে প্যারেন্ট উইন্ডোতে একটি নতুন পৃষ্ঠা খুলতে পারেন।

<a href="#" onclick="window.parent.location.href='http://www.kriblog.com';">

মনে রাখবেন X target="_parent"এক্সএইচটিএমএল এ হ্রাস করা হয়েছে, তবে এটি এখনও এইচটিএমএল 5.x তে সমর্থিত।

নীচের লিঙ্কটি থেকে আরও পড়তে পারেন http://www.kriblog.com/html/link-of-iframe-open-in-the-parent-window.html


4

সর্বাধিক বহুমুখী এবং সর্বাধিক ক্রস ব্রাউজার সমাধান হ'ল "বেস" ট্যাগটি এড়ানো এবং পরিবর্তে "এ" ট্যাগগুলির লক্ষ্য বৈশিষ্ট্যটি ব্যবহার করা:

<a target="_parent" href="http://www.stackoverflow.com">Stack Overflow</a>

<base>ট্যাগ কম বহুমুখী এবং ব্রাউজারের নথীর মধ্যে সেটির অবস্থান জন্য তাদের প্রয়োজনীয়তা মধ্যে অসঙ্গত হয়, আরো ক্রস ব্রাউজার টেস্টিং প্রয়োজন। আপনার প্রকল্প এবং পরিস্থিতির উপর নির্ভর করে, <base>ট্যাগের আদর্শ ক্রস ব্রাউজার প্লেসমেন্ট অর্জন করা কঠিন বা এমনকি সম্পূর্ণরূপে অপ্রয়োজনীয় হতে পারে ।

ট্যাগটির target="_parent"গুণাবলী সহ এটি করা <a>কেবল ব্রাউজার-বান্ধবই নয়, আপনি যদি সেই লিঙ্কগুলি ইফ্রেমে খুলতে চান এবং আপনি যে পিতামাতায় খুলতে চান তাদের মধ্যে পার্থক্য করতে দেয়।


3

<a target="parent">নতুন ট্যাব / উইন্ডোতে <a target="_parent">লিঙ্কগুলি খুলবে ... নতুন ট্যাব / উইন্ডো না খোলা পিতামাত / বর্তমান উইন্ডোতে লিঙ্কগুলি খুলবে। Don't_forget_that_underscore!


2

ইয়াহ আমি পেলাম

<base target="_parent" />

সমস্ত আইফ্রেমে লিঙ্কগুলি যদি ইফ্রেমে খোলা থাকে তবে এটি কার্যকর।

এবং

$(window).load(function(){
    $("a").click(function(){
        top.window.location.href=$(this).attr("href");
        return true;
    })
})

এটি আমরা পুরো পৃষ্ঠা বা পৃষ্ঠার নির্দিষ্ট অংশের জন্য ব্যবহার করতে পারি।

সবাইকে সাহায্য করার জন্য ধন্যবাদ।



0
   <script type="text/javascript"> // if site open in iframe then redirect to main site
        $(function(){
             if(window.top.location != window.self.location)
             {
                top.window.location.href = window.self.location;
             }
        });
    </script>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.