EDIT:
I learned that using other value than _blank
, DOES NOT work on mobile browsers to open new windows/tabs.
For example, if you need to open a new window/tab:
This works on all browsers, even mobile browsers:
target="_blank"
.This does not work on mobile browsers, but it does work on desktop browsers:
target="new"
.
--
Although I have this one working, I'm not sure if there's a better way to do it, or if the way I got it is the right/only way.
Basically what I'm doing is replacing all the target="_new"
or target="_blank"
attribute values to target="nw"
, this way only one new window is open and in it all other new windows will open in order to not overwhelm the user with multiple windows.
I'm also adding a "Opens in a new window" title=""
attribute.
So the solution I created is this one:
$("a[target='_blank'], a[target='_new']").attr('target','nw').attr('title','Opens in a new window');
Notice the two .attr();
methods.
Is this the correct way to add two attributes to an element?
I tried .attr('target','nw','title','Opens in a new window')
but it didn't work.
The reason I ask is because of the DYR (Don't Repeat Yourself) principle, so if I can improve the code I have, great, if not, then it is what it is.
Thanks.