Geekzone: technology news, blogs, forums
Guest
Welcome Guest.
You haven't logged in yet. If you don't have an account you can register now.



280 posts

Ultimate Geek


Topic # 63309 24-Jun-2010 09:10 Send private message

Hi,

Any folks in here know much about Javascript?

I am wanting to link to an .js file, to keep the head of my web page im building nice and clean.  I cant figure out how to do it though.

This is what is in the <head> of my xhtml file:

[code]
<script language="javascript" type="text/javascript">
    if(document.images){
        one_off = new Image;
        one_on = new Image;
        one_off.src = "images/navigation/gallery_up.jpg"
        one_on.src = "images/navigation/gallery_down.jpg"
        two_off = new Image;
        two_on = new Image;
        two_off.src = "images/navigation/exhibitions_up.jpg"
        two_on.src = "images/navigation/exhibitions_down.jpg"
        three_off = new Image;
        three_on = new Image;
        three_off.src = "images/navigation/commissions_up.jpg"
        three_on.src = "images/navigation/commissions_down.jpg"
        four_off = new Image;
        four_on = new Image;
        four_off.src = "images/navigation/contact_up.jpg"
        four_on.src = "images/navigation/contact_down.jpg"
        }
        else{
            one_off = "";
            one_on = "";
            document.one = "";
            two_off = "";
            two_on = "";
            document.two = "";
            three_off = "";
            three_off = "";
            document.three = "";
            four_off = "";
            four_on = "";
            document.four = "";
        }
</script>
[/code]

and in the body;

[code]
<a href="gallery.html" onmouseover="document.one.src=one_on.src" onmouseout="document.one.src=one_off.src">
<img src="images/navigation/gallery_up.jpg" name ="one" alt="Gallery" width="96" height="240" border="0"/></a>
&nbsp;
<a href="exhibitions.html" onmouseover="document.two.src=two_on.src" onmouseout="document.two.src=two_off.src">
<img src="images/navigation/exhibitions_up.jpg" name="two" alt="Exhibitions" width="96" height="240" border="0"/></a>
&nbsp;
<a href="commissions.html" onmouseover="document.three.src=three_on.src" onmouseout="document.three.src=three_off.src">
<img src="images/navigation/commissions_up.jpg" name="three" alt="Commissions" width="96" height="240" border="0"/></a>
&nbsp;
<a href="contact.html" onmouseover="document.four.src=four_on.src" onmouseout="document.four.src=four_off.src">
<img src="images/navigation/contact_up.jpg" name="four" alt="Contact" width="96" height="240" border="0"/></a>[/code]

what I would like to do, is copy the script located in the head, into its own .js file ('rollover.js') and just link to it like <script language="javascript" type="text/javascript" src="rollover.js">

What would I need to change in the body, so that it still works?  I cant figure it out :(




Create new topic
Phil Gale
1094 posts

Uber Geek
+1 received by user: 37

Trusted
Red Jungle
Subscriber

  Reply # 344760 24-Jun-2010 09:12 Send private message

Sounds like you have it right to me.. just don't put the script tags into the external .js file.




Red Jungle: we make fantastic software

RSS  Twitter  Facebook  Skype



280 posts

Ultimate Geek


  Reply # 344766 24-Jun-2010 09:23 Send private message

I tried it out, but when I refereshed the index.html file, all the images on the page dissapeared. I thought I might need to change something in this area;
[code]
<a href="gallery.html" onmouseover="document.one.src=one_on.src" onmouseout="document.one.src=one_off.src">
<img src="images/navigation/gallery_up.jpg" name ="one" alt="Gallery" width="96" height="240" border="0"/></a>
[/code]

maybe somehow telling it to look for the 'rollover.js' file instead of just looking in the head?




1750 posts

Uber Geek
+1 received by user: 36

Trusted

  Reply # 344778 24-Jun-2010 09:43 Send private message

In the head part of the HTML page, you point to your script.
script src="http://your_script.js" type="text/javascript">
/script



280 posts

Ultimate Geek


  Reply # 344780 24-Jun-2010 09:46 Send private message

Oh Do'h! I didn't relise you also needed a closing tag if it was only pointing to an external file. Thanks for the help! its working now :)




Create new topic








Twitter »
Follow us to receive Twitter updates when new discussions are posted in our forums:



Follow us to receive Twitter updates when news items and blogs are posted in our frontpage:



Follow us to receive Twitter updates when new jobs are posted to our jobs board:



Follow us to receive Twitter updates when tech item prices are listed in our price comparison site:




News »

Trending now »
Hot discussions in our forums right now:

Telecom introduces unlimited broadband data plan
Created by freitasm, last reply by joker97 on 23-Apr-2014 21:31 (77 replies)
Pages... 4 5 6


Stonedine
Created by Lizard1977, last reply by surfisup1000 on 23-Apr-2014 21:27 (58 replies)
Pages... 2 3 4


Telecom has started metering their TiVo customers' broadband usage (WITHOUT PRENOTIFICATION)
Created by Peteriv, last reply by mxpress on 23-Apr-2014 14:22 (69 replies)
Pages... 3 4 5


Forms of government for New Zealand
Created by charsleysa, last reply by KiwiNZ on 23-Apr-2014 20:57 (169 replies)
Pages... 10 11 12


Parallel imported product
Created by Wills1, last reply by joker97 on 23-Apr-2014 21:01 (53 replies)
Pages... 2 3 4


Labour MP Shane Jones to step down
Created by jeffnz, last reply by jeffnz on 23-Apr-2014 20:41 (32 replies)
Pages... 2 3


Upcoming Freeview Restack AUCKLAND
Created by Brunzy, last reply by richms on 23-Apr-2014 21:05 (13 replies)

Paywave unauthorised transaction
Created by Ford, last reply by Jase2985 on 23-Apr-2014 17:13 (69 replies)
Pages... 3 4 5



Geekzone Live »
Try automatic live updates from Geekzone directly in your browser, without refreshing the page, with Geekzone Live now.

Are you subscribed to our RSS feed? You can download the latest headlines and summaries from our stories directly to your computer or smartphone by using a feed reader.

Alternatively, you can receive a daily email with Geekzone updates.