Avatar billede lequet Nybegynder
24. august 2002 - 17:13 Der er 10 kommentarer og
3 løsninger

Test af script

Hey dav :)

Jeg vil høre om nogen af jer ikke lige kan klikke ind på dette link :

http://www.lequet.com/lab/textonimage/

Og teste at mit script nu også virker som det skal :) Jeg har indtil videre testet det i IE 6, Mozilla 1.0, Opera 5 og opera 6 under windows... Det jeg ønsker er test af scriptet i så mange browsere som muligt, under både windows, mac, Linux og hvilke OS du ellers kan finde på :)

Den eneste bug jeg indtil videre kender til er at Opera 5 og 6 ikke vil genplacere teksten når browser vinduet resizes. Kender du en løsning på det, er du også velkommen til at åbne munden :)

For god ordens skyld skal det lige siges at den røde tekst skal være placeret nogenlunde midt i den blå cirkel, er den ikke det er der noget galt :)
Avatar billede htm Nybegynder
24. august 2002 - 17:23 #1
Win2k og IE5.5 -> helt fin
win2k og opera 5.0 -> helt fin bortset fra resizes som du skriver!
Avatar billede jakoba Nybegynder
24. august 2002 - 17:29 #2
opera 4 >  teksten står oppe i venstre hjørne
opera 5 >  OK
NS7 > OK
ns4.7 >  scriptfejl. ukendt getElementById, tekst nedenunder tabellen
IE4 >    fejler på samme måde som NS4.7

mvh JakobA
Avatar billede jakoba Nybegynder
24. august 2002 - 17:31 #3
Ups. alle på Win98.
Avatar billede lequet Nybegynder
24. august 2002 - 17:32 #4
htm > Thanks

JakobA > Ikke så underligt at ns 4.x kludrer i den :) Må have lavet det om fra document.getElementById til document.Images :)
Avatar billede lequet Nybegynder
24. august 2002 - 17:33 #5
Desuden bruger jeg det script du engang gav mig i et andet spm, til at finde positionen af billedet, husker jeg galt eller virker det ikke i NS 4.x?
Avatar billede jakoba Nybegynder
24. august 2002 - 17:37 #6
scriptet har ændret sig hen ad vejen, så jeg er ikke sikker. men jo det burde virke fra NS4+ og IE4+
Avatar billede lequet Nybegynder
24. august 2002 - 17:38 #7
OK, takker
Avatar billede jakoba Nybegynder
24. august 2002 - 20:44 #8
denne duer nedtil IE4 og NS4, men test om stadig ok i IE5.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <title>Text on Image</title>
   
<META NAME="Generator" CONTENT="Stone's WebWriter 3">
    <style type="text/css">
        body {
            font-family : Verdana, Arial, Sans-Serif ;
            font-size : 11px ;
        }
       
        .image {
            z-index : 0 ;
            border : 1px solid black ;
        }
       
        .text {
            position : absolute ;
            z-index : 2 ;
            font-family : Verdana, Arial, Sans-Serif ;
            font-size : 11px ;
            font-weight : bold ;
            color : red ;
        }
    </style>
   
    <script type="text/javascript" language="JavaScript"> <!--    //>

    var ns4 = (document.layers) ? 1 : 0;            // 3 linier tilføjet
    var dom = (document.getElementById) ? 1 : 0;
    var ie  = (document.all) ? 1 : 0;

        // Function to return position of element, thanks to Jakob Aggernæs (www.jakoba.dk)
        function getXYcoord ( htmlElemObj ) {
      if ( ns4 ) return htmlElemObj;                // 1 linie tilføjet
            var elm = htmlElemObj ;
            var rd = { x:0 ,y:0 } ;

            do {
                rd.x += parseInt( elm.offsetLeft ) ;
                rd.y += parseInt( elm.offsetTop ) ;
                elm = elm.offsetParent ;
            } while ( elm ) ;

            return rd ;
        }

    function findLag ( navn ) {                    // funktion tilføjet
        if ( ns4 ) {
          document[ navn ].style = document[ navn ];
          return document[ navn ];
        }
        if ( dom ) return document.getElementById( navn );
        if ( ie ) return document.all[ navn ];
    }; //end findLag ( string ) -> html div element

        // Function to place the text on image
        function placeText() {
            var fromTop = 150 ; // The position of the text from the top of image
            var fromLeft = 40 ; // The position of the text from the left of image
           
            var imgObj = document.images[ "theImage" ] ;
            var txtObj = findLag( "theText" ) ;
           
            var imgPos = getXYcoord( imgObj ) ;
      if ( dom ) {        // dom situation tilføjet (check om ok i IE5+)
                txtObj.style.top = (imgPos.y + fromTop) +"px";
                txtObj.style.left = (imgPos.x + fromLeft) +"px";
      } else {
                txtObj.style.top = imgPos.y + fromTop ;
                txtObj.style.left = imgPos.x + fromLeft ;
      }
        }

    // --> </script>
   
</head>
<body onLoad="placeText()" onResize="placeText()">
<h2 align="center">Text on Image Script</h2>

<center>
<img src="angel.jpg" alt="" class="image" id="theImage" name='theImage'>
                        <!-- tilføjet name= attribut (for ns4) -->
</center>

<div class="text" id="theText" name='theText'>
                        <!-- tilføjet name= attribut (for ns4) -->
    This text is placed over the image
</div>

<!-- WebWriter AutoDato -->Opdateret: 24.8.2002<!-- WW -->
</body>
</html>
Avatar billede whatever Nybegynder
24. august 2002 - 20:45 #9
Med hensyn til resize i Opera 5, så understøtter den ikke onresize. Lav istedet et script som f.eks. hvert sekund tjekker om bredden/højden på vinduet ændres, hvis dette skulle være tilfældet genindlæses siden.
Avatar billede htm Nybegynder
24. august 2002 - 20:53 #10
ns6 virker også fint - mens ns4.78 ganske rigtigt ikke fungerer før man har reloadet!
Avatar billede htm Nybegynder
24. august 2002 - 20:53 #11
-
Avatar billede lequet Nybegynder
24. august 2002 - 21:28 #12
Jeg takker mange gange, så må jeg vist hellere finde en måde at dele points ud på :)
Avatar billede lequet Nybegynder
24. august 2002 - 21:30 #13
JakobA får 30 for sit extra arbejde med at finpudse koden, det var lidt mere end jeg lige havde forventet, så mange tak for det :)

Og selvfølgelig også tak til jer andre
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
Alle kurser indenfor Microsoft 365 – både til begyndere og øvede.

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