রেলগুলি: নতুন ট্যাবে লিঙ্কটি খুলুন ('লিঙ্ক_ টু' সহ)


139

আমার এই কোডটি রয়েছে:

<%= link_to image_tag("facebook.png", :class => "facebook_icon", :alt => "Facebook", :target => "_blank"),                 
            "http://www.facebook.com/mypage" %>

যখন কোনও ব্যবহারকারী লিঙ্কটি ক্লিক করেন আমি কীভাবে এটি একটি নতুন ট্যাবে খুলতে পারি?

উত্তর:


269

target: :_blank প্যারামিটারের একটি প্যারামিটার হওয়া উচিত link_to, যেহেতু আপনি এটা রাখা image_tagপ্যারামিটার। আপনার কোডটি এভাবে পরিবর্তন করুন:

<%= link_to image_tag("facebook.png", class: :facebook_icon, alt: "Facebook"), "http://www.facebook.com/mypage", target: :_blank %>

বা একটি ব্লক সহ:

<%= link_to "http://www.facebook.com/mypage", target: :_blank do %>
  <%= image_tag("facebook.png", class: :facebook_icon, alt: "Facebook") %>     
<% end %>  


8

আপনি target: :_blankপরিবর্তে ব্যবহার করতে পারেনtarget: '_blank'

<%= link_to image_tag("facebook.png", class: "facebook_icon", alt: "Facebook"), "http://www.facebook.com/mypage", target: :_blank %>

link_to do

<%= link_to "http://www.facebook.com/mypage", target: :_blank do %>
  <%= image_tag "facebook.png", class: "facebook_icon", alt: "Facebook" %>
<% end %>

3

আপনি যদি এইচটিএমএল (যে কেউ গুগল থেকে এখানে এসেছিলেন) এর মধ্যে কোনও নতুন ট্যাবে কীভাবে লিঙ্ক খুলবেন তা সন্ধান করছেন:

<a href="http://www.facebook.com/mypage" target="_blank">Link name</a>

8
আমি আপনাকে হ্রাস করতে যাচ্ছি না, তবে এই পৃষ্ঠাটি বিশেষত রুবির লিঙ্ক_টো (শিরোনাম থেকে) সম্পর্কে।
হার্ব মীহান

1
@ হারবমিহান আমি উজ্জীবিত হবে কিনা তা নিশ্চিত নই, তবে এর target: :_blankঅর্থ কী তা বোঝাতে এটি এক ধরণের কার্যকর ।
অ্যান্ড্রু গ্রিম

1

আমার বোধগম্যতা হল: আপনি ব্রাউজারকে একটি নতুন ট্যাব বা একটি নতুন সাইট খুলতে বলতে পারেন। তবে এটি ব্যবহারকারীর সেটিংসের উপর নির্ভর করে। আমি এই প্রশ্নের উত্তর বিবেচনা করছি।

এইচটিএমএল বিকল্পগুলি থেকে লিংক বিকল্পগুলি পৃথক করার প্রয়োজন হলে আমি একটি ফাঁদে পড়ে গেলাম:

link_to(name = nil, options = nil, html_options = nil, &block)

উদাহরণ:

link_to('Click me', { action: 'show', controller: 'blog', id: 1 }, { target: '_blank' })

আপনার উত্তরের জন্য ধন্যবাদ, আমাকে 2 ঘন্টা ডিবাগিং এবং টেস্টিং বাঁচিয়েছে
কার্লোস জে গার্সিয়া

1

পূর্ববর্তী উত্তরে যুক্ত করতে নীচের ফর্ম্যাটটি হ'ল রুবোকপ দ্বারা পরামর্শ দেওয়া হচ্ছে। এটি একটি সুরক্ষা ঝুঁকি হতে পারে কারণ লোড হওয়া পৃষ্ঠাটির আগের পৃষ্ঠার উপর নিয়ন্ত্রণ থাকবে এবং ফিশিংয়ের উদ্দেশ্যে তার অবস্থান পরিবর্তন করতে পারে।

এটি রোধ করতে কোডে 'rel' বৈশিষ্ট্য যুক্ত করা দরকার।

rel: 'noopener'

এখন লিঙ্ক_টি হওয়া উচিত:

<%= link_to image_tag("facebook.png", class: :facebook_icon, alt: "Facebook"), "http://www.facebook.com/mypage", target: :_blank, rel: 'noopener %>

রুবোকপ ডক্স

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