Forum Moderators: open

Message Too Old, No Replies

Moving script into and external sheet

looks OK but the event does not call the script

         

limbo

12:14 pm on Jan 13, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I am a bit of a Javascript numpty - Hack hack hack - bit like my golf game ;) - although both are getting better.

Anyway I have a nice little snippet that works fine when the script is inserted into the header tag. but when I remove the code and place in an external sheet it does not function. I am sure I am missing something simple but I can't get the two to function this way.

In Header:

<--//

function mOvr(src,clrOver){
if (!src.contains(event.fromElement)){
src.style.cursor = 'hand'; src.bgColor = clrOver;
}
}
function mOut(src,clrIn){
if (!src.contains(event.toElement)){
src.style.cursor = 'default';
src.bgColor = clrIn;
}
}
function mClk(src){
if(event.srcElement.tagName=='TD'){
src.children.tags('A')[0].click();
}
}
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i>a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i>d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->

In Body (assigned to <td> tag):

<td onMouseOver="mOvr(this,'#ebebeb');" onClick="self.location='page.htm'"
onMouseOut="mOut(this,'#ffffff');" valign=top bgcolor=#ffffff colspan=5>

--------------------
Now, I know the script works - that's fine, but how do I wrap it as an external file and call it with 'on mouseover' and 'on click'?

Ta

Limbo

korkus2000

12:59 pm on Jan 13, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Is this tag in the js? <--// That will cause an issue. Are you making sure to not have script tags in the js? What tag are you using to call the js?

limbo

1:30 pm on Jan 13, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



No the <--// \\-->> tags are not in the header section

No script tags in the .js file either.

This:

<td onMouseOver="mOvr(this,'#ebebeb');" onClick="self.location='page.htm'"
onMouseOut="mOut(this,'#ffffff');" valign=top bgcolor=#ffffff colspan=5>

Calls the javascript (I think)

Ta

Limbo

limbo

1:35 pm on Jan 13, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Got him!

Was missing " from the below statement! Always what you least expect

<SCRIPT src="../js/rollover.js type=text/javascript></SCRIPT>

Thanks Korkus

Ta

Limbo