jleeMedlem sedan dec. 2002378 inlägg Exakt vad gör varje värde (det fetmarkerade) med popup ruta och bild?
Som det är nu när jag anropar i länken så beskärs en liten del av bilden både på längd och bredd! Hur får jag popup bilden att visa hela bilden och inte en del?
<script language="javaScript">
<!--
function Show(filename,winTitle)
{
var myImage = new Image();
myImage.src=filename;
properties='height=100,width=100';
var imgWindow = window.open('','',properties);
html = '<html>';
html += '<head>';
html += '<title>'+winTitle+'</title>';
html += '</head>';
html += '<center>';
html += '<body [B]topmargin="1" marginheight="2" leftmargin="1" marginwidth="2[/B]">';
html += '<img src="'+myImage.src+'" onLoad="resizeTo(document.bild.[B]width+10,document.bild.height+10[/B]);" name="bild" OnClick="self.close();">';
html += '</body>';
html += '</html>';
imgWindow.document.write(html);
}
//-->
</script>
Peter SMedlem sedan dec. 20025 483 inlägg Den första raden är HTML-attribut. top- och leftmargin är IE-specifika. De andra två värdena har ingenting med <body>-elementet att göra, så varför de är där är en gåta.
Den andra raden ändrar storleken på fönstret. Bredden sätts till bildens bredd + 10 pixlar. Höjden sätts på liknande sätt.
jleeMedlem sedan dec. 2002378 inlägg ja denna rad:
onLoad="resizeTo(document.bild.width+50,document.bild.height+100
kan jag ju göra fönstret större med men vill helst inte att det ska bli vitt utanför bilden så det måste väl gå att lösa på något sätt?
jleeMedlem sedan dec. 2002378 inlägg
Peter S skrev:
Den första raden är HTML-attribut. top- och leftmargin är IE-specifika. De andra två värdena har ingenting med <body>-elementet att göra, så varför de är där är en gåta.
Den andra raden ändrar storleken på fönstret. Bredden sätts till bildens bredd + 10 pixlar. Höjden sätts på liknande sätt.
Men grejen är den att det inte blir +10 pixlar på bildens storlek ändå...vissa bilder har lite vitt runt om och vissa har vitt på vänster och höger sida beroende på storlek
Peter SMedlem sedan dec. 20025 483 inlägg Ta en titt på Johans varianter.
jleeMedlem sedan dec. 2002378 inlägg Ja där finns kanon exempel men själv har jag nog problem med att anpassa eller plocka ut relevanta saker till mitt script...
Peter SMedlem sedan dec. 20025 483 inlägg <script type="text/javascript">
/* Skriptet kommer ursprungligen från [url]http://www.jojoxx.net[/url] */
function Show(filename, winTitle){
MyWin = window.open("","","scrollbars=no,resizable=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,width=100,height=100");
with(MyWin.document){
open();
write("<html>\n<head><scr"+"ipt>awidth=(document.layers)?0:8;awidth+=(document.all)?4:0;aheight=(document.layers)?0:29;</scr"+"ipt>\n<title>"+winTitle+"</title>\n</head>\n<body onLoad=\"window.resizeTo(document.images[0].width+awidth,document.images[0].height+aheight)\"marginwidth=0 marginheight=0 leftmargin=0 topmargin=0 rightmargin=0 style=\"overflow:hidden;\">\n");
write("<img src=\""+filename+"\">\n");
write("</body>\n</html>\n");
close();
}
}
</script>
// Anrop
Show("filnamn", "titel");
jleeMedlem sedan dec. 2002378 inlägg ok tack men borde skickat med mitt anrop så det oxå stämmer för nu blir det scriptfel.
<a href="javascript:Show('<%=popbild(rs("p55"))%>','<%=rs("p1")%>')"><img src="<%=litenbild(rs("p5"))%>" width="100" height="100" class="border"> </a>
jleeMedlem sedan dec. 2002378 inlägg 2 st fel blir det:
#1) ; förväntas
#2) 'awidth' är odefinierad
Peter SMedlem sedan dec. 20025 483 inlägg Det har smugit sig in ett mellanslag (ahei ght) på den första write()-raden. Det skall ej vara där.
jleeMedlem sedan dec. 2002378 inlägg Det stämmer mennu öppnas den som 100 x 100 och hur får jag det dynamiskt?
Peter SMedlem sedan dec. 20025 483 inlägg 100x100 är den minsta möjliga storleken. För bilder större än så, fungerar skriptet utmärkt för mig. :)
jleeMedlem sedan dec. 2002378 inlägg Kan det bero på att jag anropar såhär då?
<a href="javascript:Show('<%=popbild(rs("p55"))%>','<%=rs("p1")%>')"><img src="<%=litenbild(rs("p5"))%>" width="100" height="100" class="border"> </a>
Peter SMedlem sedan dec. 20025 483 inlägg Skriv gärna ut koden såsom den skickas till webbläsaren.
jleeMedlem sedan dec. 2002378 inlägg Ok du menar var funktionerna gör i p55 och p5 då?
<%
Function popbild(strText)
Set objRX = New Regexp
objRX.Global = True
objRX.IgnoreCase = True
objRX.Pattern = "popbild(\d+)"
popbild = objRX.Replace(strText, "$1.jpg")
End Function
%>
och
<%
Function litenbild(strText)
Set objRX = New Regexp
objRX.Global = True
objRX.IgnoreCase = True
objRX.Pattern = "litenbild(\d+)"
litenbild = objRX.Replace(strText, "$1.jpg")
End Function
%>
p1 är bara text som visas i head på pop up bilden!
Har valt att ha en lite tumnagel med rätt proportioner och stor bild för sig eftersom det annars blir en hoptryckt tumnagel om bilden är rektangulär och inte kvadratisk.
Var det detta du menade?
Visas exakt hela bilden i ditt script? för där står ju overflow ska vara hidden?
Peter SMedlem sedan dec. 20025 483 inlägg
jlee skrev:
Ok du menar var funktionerna gör i p55 och p5 då?
Nej, hur koden ser ut i "Visa källa" (eller liknande) i webbläsaren när den behandlats av ASP-motorn. :)
jleeMedlem sedan dec. 2002378 inlägg hehe ok, popup sidan blir såhär:
<html>
<head><script>awidth=(document.layers)?0:8;awidth+=(document.all)?4:0;aheight=(document.layers)?0:29;</script>
<title>test</title>
</head>
<body onLoad="window.resizeTo(document.images[0].width+awidth,document.images[0].height+aheight)"marginwidth=0 marginheight=0 leftmargin=0 topmargin=0 rightmargin=0 style="overflow:hidden;">
<img src="001.jpg">
</body>
</html>
Peter SMedlem sedan dec. 20025 483 inlägg Ok, men hur ser nedanstående rad ut? ;)
<a href="javascript:Show('<%=popbild(rs("p55"))%>','<%=rs("p1")%>')"><img src="<%=litenbild(rs("p5"))%>" width="100" height="100" class="border"> </a>
jleeMedlem sedan dec. 2002378 inlägg :l
Nu är jag inte med alls?!
Peter SMedlem sedan dec. 20025 483 inlägg I mitt senaste inlägg finns en del ASP-kod med; den är ej av intresse i detta delforum. Vad som istället är intressant, är vad för HTML som den ASP-koden genererar. Därför skulle det vara kul att se hur ovanstående rad ser ut i ren HTML. :)