26. januar 2008 - 10:33Der er
7 kommentarer og 1 løsning
Hjælp til document.all.logo.innerHTML i Firefox, Opera, Safari
Jeg har en uploadfunktion, hvor en bruger kan upload et logo til en given profil.
Der benyttes 2 seperate sider, hvor den ene er et uploadvindue og den anden til visning af billedet umiddelbart efter upload.
Problemet er, at kun IE viser billedet, når der gøres brug af JavaScriptet i nedenstående kode.
Er der en venlig sjæl der kan hjælp med at fremtrylle kompabilitet med andre tilgængelige browere (Firefox, Opera, Safari..)
På forhånd tak for hjælpen og indsatsen! :)
Kode:
--Kodestump fra UploadBillede.asp--
<script language="JavaScript"> opener.writediv('<a title=\'Klik for at se logo i fuld størrelse\' target=\'_blank\' href=\'filmappe/FileName.jpg\'><img src=\'filmappe/FileName_small.jpg\'></a>'); self.close(); </script>
--Kodestump fra Vis_logo.asp--
<script language="JavaScript"> function upload(){ window.open('uploadfirmafoto.asp','','width=480,height=200,status=yes,toolbar=no,scrollbars=yes,resizable=yes,navbar=no'); } function writediv(what){ document.all.logo.innerHTML=what; } </script>
<div id="logo">Logo indsættes her, når uploadvidnue lukkes</div>
Problemet med koden er, at den ikke er helt up-to-date. F.eks. er "document.all" noget som Internet Explorer har opfundet (deraf fejlen), og innerHTML er ikke gyldig kode heller, om end det kan virke som om det fungerer. (Det medfører dog en række problematikker, man ikke lige får øje på.)
Det burde dog virke, hvis vi bare retter document.all:
function writediv(what){ document.getElementById("logo").innerHTML=what; }
Bemærk at "getElementById()" er den korrekte metode i stedet for "all".
I øvrigt skal et script-tag også have type="text/javascript", så dem bør du rette til: <script type="text/javascript" language="javascript">
Jeg er ved at være færdig med en artkelserie om Ajax i Prosabladet, som vil komme i udvidede udgaver på www.dengodekode.dk - ligesom bogen om Ajax hastigt nærmer sig ;o)
Quite "w13": Det burde dog virke, hvis vi bare retter document.all:
Virker fint i IE, men stadig ikke i Firefox :( Måske burde jeg have påpeget, at siden "UploadBillede.asp" er et vindue der åbnes fra "Vis_logo.asp", på hvilken billedet også skal vises uden reload.
Hej min kære, Hvordan har du i dag, jeg håber, at alle er godt med dig. Jeg er ked af at bekymre dig med min Forslag til et forhold med dig, men jeg ved, at du vil imødekomme min anmodning i god tro og forståelse. Jeg har brug for dig i forretningsbetingelser og rådgive. Mit navn er Grace Dabah jeg bare gik gennem din profil har ingen andre muligheder end at lade dig vide, at jeg er interesseret i at have et forhold med dig, vil jeg også gerne vide dig mere, kan du sende en mail til min e-mail adresse (grace_11dabah @ yahoo.com), så jeg kan sende dig flere oplysninger om mig selv inklusive mit billede. Jeg tror, vi kan gå herfra. Men huske på, at kærlighed ikke har nogen farver barriere, ingen uddannelsesmæssige tilbage jorden barriere, ingen socio-økonomiske barrierer, religiøse, sprog, nationalitet eller afstand hindring, det eneste vigtige der er kærlighed. Jeg venter på din mail til min e-mail adresse ovenfor. Med venlig hilsen, Miss Grace.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.