Avatar billede theblueman Nybegynder
05. oktober 2007 - 11:46 Der er 24 kommentarer og
1 løsning

hvordan får jeg titel på mit billede?

Hej eksperter,

Har et lille problem.... Vil gerne have en titel på når jeg fører musen hen over billedet... Se min kode:


function open_win_bred(site_bred, titel)
{

var hMyWidth = (window.screen.width/2) - (250 + 10);
var hMyHeight = (window.screen.height/2) - (285 + 25);

stort_billede_bred = window.open('',"billede","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, top=" + hMyHeight + ", left=" + hMyWidth + ", width=600, height=450");

var site = "<img src="+site_bred+" width=600 height=450 alt="+titel+">";
stort_billede_bred.document.write('<html><body bgcolor="#000000" style="margin: 0;" marginheight="0" marginwidth="0" border="0"><table width="100%" height="100%" align="center" cellspacing="0" cellpading="0" border="0"><tr width="100%" height="100%" align="left"><td width="100%" height="100%" align="left" valign="top">');
stort_billede_bred.document.write(site);
stort_billede_bred.document.write('</td></tr></table></body></html>');
}

Når jeg fører musen henover får jeg 'undefined'.

Vh Lars
Avatar billede roenving Novice
05. oktober 2007 - 11:56 #1
Det har så ikke nnget med den kode at gøre ...

-- i øvrigt kan du forkorte din window.open til:

stort_billede_bred = window.open('',"billede","status=no,top=" + hMyHeight + ", left=" + hMyWidth + ", width=600, height=450");
Avatar billede roenving Novice
05. oktober 2007 - 12:10 #2
Hov, jeg glemte jo at besvare det egentlige spørgsmål:

<img src="mitBillede.gif" onclick="open_win_bred(this.src,this.title);" title="Hans' 30 års fødseldag">
Avatar billede jhe-ting Nybegynder
05. oktober 2007 - 13:30 #3
Hvilken værdi har den anden parameter (titel) der hvor du kalder funktionen?
Det er ud som det er er du får din 'undefined' fra...
Avatar billede theblueman Nybegynder
05. oktober 2007 - 13:46 #4
jeg sender kaldet fra flash med koden:

getURL("java script:open_win_bred(' "+this.sUrl+" , "+this.tekst+" ');");

vh Lars
Avatar billede olebole Juniormester
05. oktober 2007 - 19:11 #5
<ole>

Er det mon ikke dine gåseøjne og white-space, der giver problemerne? Prøv:
    getURL("java script:open_win_bred('"+this.sUrl+"' , '"+this.tekst+"')");

/mvh
</bole>
Avatar billede theblueman Nybegynder
05. oktober 2007 - 20:28 #6
det giver noget indhold i titel men det er

eks. "level0.hoved_indhold.container11.tekst". Jeg gætter på at man skal konvertere this.tekst til et andet format men hvordan jeg gør det kan jeg ikke finde frem til...!

hvis jeg skriver

getURL("java script:open_win_bred('"+this.sUrl+"' , '"+this.tekst.text.+"')");

får jeg de først fire felter i titlen så jeg nærmer mig...:-)

det ser ud til at den skriver det af titlen som står før det første blanke space....
Avatar billede theblueman Nybegynder
05. oktober 2007 - 20:29 #7
rettelse:

getURL("java script:open_win_bred('"+this.sUrl+"' , '"+this.tekst.text+"')");
Avatar billede olebole Juniormester
05. oktober 2007 - 22:33 #8
Det her får jeg ikke megen mening ud af:
"får jeg de først fire felter i titlen så jeg nærmer mig...:-)

det ser ud til at den skriver det af titlen som står før det første blanke space...."
Avatar billede theblueman Nybegynder
07. oktober 2007 - 13:50 #9
Er der nogen der har forstand på overførsel og konvertering af variabler fra Flash til HTML?

Har stadig ikke fundet en løsning.

God Søndag!

Vh
Lars
Avatar billede olebole Juniormester
07. oktober 2007 - 16:06 #10
Som sagt er det ikke forståeligt, hvad du skriver, så måske du skulle gøre lidt ud af at forklare, hvad du mener. Ellers er der nok ikke store chancer for hjælp  :)
Avatar billede theblueman Nybegynder
07. oktober 2007 - 16:28 #11
okay "OleBole", så må jeg jo bruge lidt tid på at forklare det...!

Jeg har et kald Javascript-funktions kald fra Flash, se ovenstående kode, hvor jeg overfører et TextField "tekst.text" ved hjælp af:
getURL("java script:open_win_bred('"+this.sUrl+"' , '"+this.tekst.text.+"')");

eks.: titel="En Sommerdag På Heden"

Når jeg fører musen over billedet får jeg i titel-feltet "En". Det viser sig at jeg ved alle billederne får jeg vist de tegn som befinder sig indtil første blanke space(mellemrum). Eks.:

"Kulde I Kælderen"  giver "Kulde" og "I Poolen Igen" giver "I".

Jeg tror det har noget at gøre med formatet. Tænkte at jeg måske skulle konvertere text.field-formatet til et string-format. Men hvordan bærer man sig ad med det?

Håber det er forståeligt!

Vh
Lars
Avatar billede theblueman Nybegynder
08. oktober 2007 - 08:13 #12
jeg ønsker simpelthen popup-titel på mit nye vindue som jeg åbner ved nedenstående javescript-funktion. Det fremgår fint i tele-linien men når jeg fører musen over billedet skulle titlen gerne komme frem.

min definition af TextField-variablen i Flash ser sådan her ud:

var tekst:TextField = container.createTextField("tekst", container.getNextHighestDepth(), 0, 100, 130, 300);
        tekst.textColor = 0xFFFFFF;
        tekst.wordWrap = true;
        tekst.multiline = true;

mit javascript ser sådan her ud:

function open_picture_win(site_bred, titel, hoejde, bredde)
{
if(stort_billede)
{
  stort_billede.close();
}
var hMyWidth = (window.screen.width/2) - (250 + 10);
var hMyHeight = (window.screen.height/2) - (285 + 25);

stort_billede = window.open('',"billede","status=no,top=" + hMyHeight + ", left=" + hMyWidth + ", width=" + bredde + ", height=" + hoejde +"");

var site = "<html><head><title>"+titel+"</title></head><body bgcolor=#000000 style=margin:0; marginheight=0 marginwidth=0 border=0><img src="+site_bred+" width="+bredde+" height="+hoejde+" alt="+titel+"></body>";

stort_billede.document.write(site);
}

Håber jeg hermed har gjort mig forståelig.

Vh Lars
Avatar billede olebole Juniormester
08. oktober 2007 - 13:38 #13
Der kan ikke være mellemrum i en identifier. Der kan derfor ikke være mellemrum i andet argument i en window.open ... det, du kalder 'titlen'  :)
Avatar billede olebole Juniormester
08. oktober 2007 - 13:39 #14
Hvis nogen ved en fejl skulle finde på at give popup'en navnet "En Sommerdag På Heden", er det med andre ord helt forståeligt, hvis det blot bliver til "En"  :)
Avatar billede theblueman Nybegynder
08. oktober 2007 - 15:55 #15
Det har du ret i. Hvis du kigger i min kode kan du se at navnet på vinduet jeg åbner er stort_billede.
Avatar billede mcardle Nybegynder
09. oktober 2007 - 18:31 #16
Denne her kode virker hos mig og skriver hele "En sommerdag på heden".

            function open_win_bred(site_bred, titel){
                var hMyWidth = (window.screen.width/2) - (250 + 10);
                var hMyHeight = (window.screen.height/2) - (285 + 25);
               
                stort_billede_bred = window.open('',"billede","status=no,top=" + hMyHeight + ", left=" + hMyWidth + ", width=600, height=450");
               
                var site = "<img src='"+site_bred+"' width='600' height='450' alt='"+titel+"' \/>";
               
                stort_billede_bred.document.write('<html><body style="background-color: #000; margin: 0px; margin: 0px; border-width: 0px;"><center>');
                stort_billede_bred.document.write(site);
                stort_billede_bred.document.write('</center></body></html>');
            }

//mcardle
Avatar billede olebole Juniormester
09. oktober 2007 - 18:55 #17
theblueman >> Jeg havde set forkert, men navnet på vinduet er nu 'billede' ... ikke 'stort_billede'. 'stort_billede' er navnet på den variabel, der refererer til vinduet, men er ikke dets navn  ;o)

Du har tydeligvis problemer omkring tegnsæt. Du kunne prøve med:
    getURL("java script:open_win_bred('"+this.sUrl+"' , encodeURIComponent('"+this.tekst.text.+"'))");
Avatar billede olebole Juniormester
09. oktober 2007 - 18:58 #18
Hov, du har da også en fejl. Der er jo et punktum for meget i dit udtryk ... og det fik jeg kopieret med  :)
    getURL("java script:open_win_bred('"+this.sUrl+"' , encodeURIComponent('"+this.tekst.text+"'))");
Avatar billede olebole Juniormester
09. oktober 2007 - 18:59 #19
Virker det ikke, så prøv:
    getURL("java script:open_win_bred('"+this.sUrl+"' , '"+escape(this.tekst.text)+"')");

- men jeg ville prøve den anden først og vælge dén, hvis den virker  :)
Avatar billede theblueman Nybegynder
10. oktober 2007 - 07:21 #20
Du har ret Olebole. Navnet på vinduet er 'billede'.

Jeg kan dog ikke få din kode til at virke...!

Den kode som jeg fik hjælp til af 'Roenving' virker i IE7 men ikke i Firefox. Sådan ser den ud:

function open_picture_win(site_bred, titel, hoejde, bredde)
{
var hMyWidth = (window.screen.width/2) - (250 + 10);
var hMyHeight = (window.screen.height/2) - (285 + 25);

stort_billede = window.open('',"billede","status=no,top=" + hMyHeight + ", left=" + hMyWidth + ", width=" + bredde + ", height=" + hoejde +"");

var site = "<html><head><title>"+titel+"</title></head><body bgcolor=#000000 style=margin:0; marginheight=0 marginwidth=0 border=0><img src="+site_bred+" width="+bredde+" height="+hoejde+" alt='"+titel+"'></body>";

stort_billede.document.write(site);
}

med et kald fra Flash som ser sådan ud:
getURL("java script:open_picture_win('"+this.sUrl+"' , '"+this.tekst.text+"' , '"+this.h+"' , '"+this.w+"');
Avatar billede roenving Novice
10. oktober 2007 - 13:59 #21
Prøv at lave det uden mellemrum i winProp-variablen, det var et issue med ældre IE'er ...

stort_billede = window.open('',"billede","status=no,top=" + hMyHeight + ",left=" + hMyWidth + ",width=" + bredde + ",height=" + hoejde);
Avatar billede mcardle Nybegynder
10. oktober 2007 - 14:17 #22
Fandt lige denne her til at lave popups til flash, det kan være den kan hjælpe.

http://www.flash-db.com/PopUp/

//mcardle
Avatar billede olebole Juniormester
10. oktober 2007 - 16:12 #23
theblueman >> Jeg forstår ikke, hvorfor du ikke kan få mine forslag til at virke - men roenvings sidste kommentar er _yderst_ vigtig! Jeg har bare ikke set fejlen før nu, hvor roenving påpeger den  ;o)
Avatar billede theblueman Nybegynder
10. oktober 2007 - 18:24 #24
Er nu testet i Firefox uden mellemrum og det hjalp ikke. Den vises, som nævnt, fint i IE7 og det er vel også det vigtigste. Stræber dog mod at det også virke i Firefox. Det skal lige nævnes at titlen står i titellinien i begge browsere men ikke ved OnMouseOver i Firefox og det er det jeg skal have til at virke. Jeg skal være færdig i morgen og jeg orker ikke at sidde oppe hele natten for at løse dette problem så jeg må acceptere det indtil videre. Tror dog på at der er en løsning ellers koder jeg en løsning i Actionscript. Håber dog at jeg kan finde en løsning. 

Tak til mcardle! Måske jeg kan finde løsningen der. Det bliver dog først fredag da jeg ikke har tid til at kigge på det før.

Tak til jer alle for jeres tid...!

Vh Lars
Avatar billede theblueman Nybegynder
09. januar 2011 - 13:22 #25
Ikke aktuelt mere
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester