E
EnjoyNews
I have a popup problem.
I have a script that generates a popup for image viewing.
It has 2 function, and the first is that it automaticly generates the popup
window to the size of the image, and the second is that it closes the popup
window when you click outside of it.
It is a script I have found on the internet, since I have no experience in
javascript coding.
It works fine, but the site won't go through a w3c validation.
In the script there are some body, title, head tag's which the validation
won't exept.
It looks like it can't see that it is inside a script, and think it's a body
tag that is suddently in the middle of the site, which it ofcause won't
exept.
So I need a little help with this one.
Or maybe if it's an older script, and someone knows a better and newer one
that can do the job.
Here is the script:
<script type="text/javascript">
PositionX = (screen.width/20);
PositionY = (screen.height/20);
defaultWidth = 800;
defaultHeight = 800;
var AutoClose = true;
if (parseInt(navigator.appVersion.charAt(0))>=4){
var isNN=(navigator.appName=="Netscape")?1:0;
var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}
var
optNN='scrollbars=no,width='+defaultWidth+',height='+defaultHeight+',left='+
PositionX+',top='+PositionY;
var
optIE='scrollbars=no,width=150,height=100,left='+PositionX+',top='+PositionY
;
function popImage(imageURL,imageTitle){
if (isNN){imgWin=window.open('about:blank','',optNN);}
if (isIE){imgWin=window.open('about:blank','',optIE);}
with (imgWin.document){
writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</styl
e>');writeln('<sc'+'ript>');
writeln('var isNN,isIE;');writeln('if
(parseInt(navigator.appVersion.charAt(0))>=4){');
writeln('isNN=(navigator.appName=="Netscape")?1:0;');writeln('isIE=(navigato
r.appName.indexOf("Microsoft")!=-1)?1:0;}');
writeln('function reSizeToImage(){');writeln('if
(isIE){');writeln('window.resizeTo(100,100);');
writeln('width=100-(document.body.clientWidth-document.images[0].width);');
writeln('height=100-(document.body.clientHeight-document.images[0].height);'
);
writeln('window.resizeTo(width,height);}');writeln('if (isNN){');
writeln('window.innerWidth=document.images["George"].width;');writeln('windo
w.innerHeight=document.images["George"].height;}}');
writeln('function
doTitle(){document.title="'+imageTitle+'";}');writeln('</sc'+'ript>');
if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no"
onload="reSizeToImage();doTitle();self.focus()">')
else writeln('</head><body bgcolor=000000 scroll="no"
onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
writeln('<img name="George" src='+imageURL+'
style="display:block"></body></html>');
close();}}
</script>
And on the site i write this:
<a href="javascriptopImage('the image url','the popup window name')">click
here</a>
I have a script that generates a popup for image viewing.
It has 2 function, and the first is that it automaticly generates the popup
window to the size of the image, and the second is that it closes the popup
window when you click outside of it.
It is a script I have found on the internet, since I have no experience in
javascript coding.
It works fine, but the site won't go through a w3c validation.
In the script there are some body, title, head tag's which the validation
won't exept.
It looks like it can't see that it is inside a script, and think it's a body
tag that is suddently in the middle of the site, which it ofcause won't
exept.
So I need a little help with this one.
Or maybe if it's an older script, and someone knows a better and newer one
that can do the job.
Here is the script:
<script type="text/javascript">
PositionX = (screen.width/20);
PositionY = (screen.height/20);
defaultWidth = 800;
defaultHeight = 800;
var AutoClose = true;
if (parseInt(navigator.appVersion.charAt(0))>=4){
var isNN=(navigator.appName=="Netscape")?1:0;
var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}
var
optNN='scrollbars=no,width='+defaultWidth+',height='+defaultHeight+',left='+
PositionX+',top='+PositionY;
var
optIE='scrollbars=no,width=150,height=100,left='+PositionX+',top='+PositionY
;
function popImage(imageURL,imageTitle){
if (isNN){imgWin=window.open('about:blank','',optNN);}
if (isIE){imgWin=window.open('about:blank','',optIE);}
with (imgWin.document){
writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</styl
e>');writeln('<sc'+'ript>');
writeln('var isNN,isIE;');writeln('if
(parseInt(navigator.appVersion.charAt(0))>=4){');
writeln('isNN=(navigator.appName=="Netscape")?1:0;');writeln('isIE=(navigato
r.appName.indexOf("Microsoft")!=-1)?1:0;}');
writeln('function reSizeToImage(){');writeln('if
(isIE){');writeln('window.resizeTo(100,100);');
writeln('width=100-(document.body.clientWidth-document.images[0].width);');
writeln('height=100-(document.body.clientHeight-document.images[0].height);'
);
writeln('window.resizeTo(width,height);}');writeln('if (isNN){');
writeln('window.innerWidth=document.images["George"].width;');writeln('windo
w.innerHeight=document.images["George"].height;}}');
writeln('function
doTitle(){document.title="'+imageTitle+'";}');writeln('</sc'+'ript>');
if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no"
onload="reSizeToImage();doTitle();self.focus()">')
else writeln('</head><body bgcolor=000000 scroll="no"
onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
writeln('<img name="George" src='+imageURL+'
style="display:block"></body></html>');
close();}}
</script>
And on the site i write this:
<a href="javascriptopImage('the image url','the popup window name')">click
here</a>