Jump to content
xisto Community
Sign in to follow this  
overture

Opening A Window (xhtml Valid Way) opening a window while being XHTML valid

Recommended Posts

This is going to be an extremely simple tutorial for you all. I know many people still don't understand XHTML in the respect of "why use it", but this tutorial is not to explain to you why, i believe mastercomputers explained it all in another topic. This topic is to tell you how to open another window while being XHTML 1.0, 1.1 valid.

I will be using Javascript so you can either put the code in an external file and link to it (remember to add the '/' before the '>' :P ).

This is the simple Javascript function we will be using:

function launchit(url) {[tab][/tab]window.open(url);}

This function when called upon will create and open a window which will take you to the website which has been given.

The above code has a variable within it called 'url', this is so that it knows that something is going to be used in order for the function to work correctly, in this case a website address.

This is the code to use it correctly:
<a href="http://overture.uni.cc" onclick="launchit('http://overture.uni.cc'); return false;">Some Link</a>

As you can see the function is called upon using the onclick event within the anchor tag. I hear you say "what does the 'return false' do". This basically stops the focused window (the window which the link is on) to not go to that website as we want it to open in another window (that is the whole point of this tutorial).

The normal way to do this would be to use this code:
target="_blank"
This would open the window getting the url from within the href="".

This however is not valid XHTML and will return and error when it is checked. This is because the 'target' attribute is not supported in XHTML 1.0 or 1.1. I do believe it is in XHTML TRANSITIONAL (could someone verify that for me).

Well that is it. I believe this all works correctly. If not tell me the problem and i will try and correct yours or my mistake.

overture.

Share this post


Link to post
Share on other sites

as far as i know... no. although i haven't searched the web for other ways if there are any. javascript would still be needed to be used as this is the only way to open another window as the "target="_blank"" has been removed. it is an easy way none the less. :P

Share this post


Link to post
Share on other sites

>_< I'm taking the easy way out, writing (off-site) next to all the links I used to make pop into new windows, and writing a line in my introduction that says that all links marked with (off-site) lead out of the site and visitors are advised to open them in new windows.Does away with the whole target and javascript thing. Sometimes the easiest ways are the least thought-off... By the way, just asking, would this particular javascript still allow people to open the window in a new tab or other similar shortcuts? As in would it override all other ways of opening the site?

Share this post


Link to post
Share on other sites

yeah. you can still open in a new tab by doing the usual process and you can also use shift + click to open in a new window also. the Javascript code does not remove any other way of doing opening the website/page. it is just a replacement method for people who want to be Strict in their coding.

Share this post


Link to post
Share on other sites

There is a way open links in new window without Javascript and using valid XHTML.

 

You can add more methods to XHTML. You can either load a DTD supporting target or add it to it inside the <!DOCTYPE>

 

What to add is:

 

[ <!ATTLIST a target CDATA #IMPLIED> ]

Notice that most browsers (including geckos and IE) show "]>" at the top of the page. This sucks but you can hide it using CSS change it to background-color. Also I believe it will disappear from Geckos at least. Opera does not show it.

Share this post


Link to post
Share on other sites

Herrco i tried this before and it never worked. Like you said it shows the "]>" at the top of the page which if you have something which needs to be positioned right at the top then it will be moved out of place. it did not even open the links in a new window. i had this answer in an old forum i was at before i came to this one and still it didn't work. i still think the little bit of Javascript is best and most efficient way as it works absolutely perfectly :(

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.