HTML: how to force links to open in a new tab, not new window [duplicate]
I use target="_blank"
to open links in a new tab. But in IE it opens a new window which is completely logical because that is what _blank
is supposed to do.
And i don't know how target="_blank"
behaves in other browsers.
Is there something to force links to op开发者_JAVA百科en in a new tab. If the browser supports tabs... else make a new window
There is no way to do that as the author of the HTML that a browser renders. At least not yet that I know of. Its pretty much up to the browser and its settings / preferences that are set by users themselves.
Also, you shouldn't impose this upon any user. A browser is the user's property. If a user wants to open all links in tabs or in new windows, then let the user do exactly that.
It's good that we can't do certain things. target=_blank
is still abused and popups have been done to death.
Since I fell into this old question and then found that it is now possible (maybe this css option wasn't available then), I just want to add an update on how it can be done:
<a href="[yourlink]" target="_blank" style="target-new: tab;">Google</a>
Here are the options for the target-new style:
target-new: window | tab | none
Didn't test the none option, maybe it uses the default browser setting.
I confirmed this for Firefox and IE7-9.
No, there isn't.
I hope this will help you
window.open(url,'_newtab');
I didn't try this but I think it works in all browsers:
target="_parent"
The way the browser handles new windows vs new tab is set in the browser's options and can only be changed by the user.
onclick="window.open(this.href,'_blank');return false;"
a {
target-name: new;
target-new: tab;
}
The target-new property specifies whether new destination links should open in a new window or in a new tab of an existing window.
Note: The target-new property only works if the target-name property creates a new tab or a new window.
You can change the way Safari opens a new page in Safari > Preferences > Tabs > 'Open pages in tabs instead of windows' > 'Automatically'
You can set IE to open links in new tab, just go to the settings menu.
In Internet Explorer, click the Tools -> Internet Options. Click General tab -> Tabs -> Settings. Choose "When a pop-up is encountered"-> Always open pop up in new tab option. Click OK.
It is possible!
This appears to override browser settings. Hope it works for you.
<script type="text/javascript">
// Popup window code
function newPopup(url) {
popupWindow = window.open(url,'popUpWindow1','height=600,width=600,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes')
}
</script>
<body>
<a href="JavaScript:newPopup('http://stimsonstopmotion.wordpress.com');">Try me</a>
</body>
Simply using "target=_blank" will respect the user/browser preference of whether to use a tab or a new window, which in most cases is "doing the right thing".
- IE9+ Default: Tab : Preference: "Always open pop-ups in a new tab"
- Chrome Default: Tab. Hidden preference:
- Firefox: Default: Tab https://support.mozilla.org/en-US/kb/tab-preferences-and-settings
- Safari: Default: Tab
If you specify the dimensions of the new window, some browsers will use this as an indicator that a certain size is needed, in which case a new window will always be used. Stack overflow code example Stack Overflow
Try with javascript function like this
Html:
<a href="javascript:void(0)" onclick="open_win()">Target</a>
Javascript:
<script>
function open_win()
{
window.open("https://www.google.co.in/");
}
</script>
精彩评论