Avatar billede carstenandersen Nybegynder
19. oktober 2012 - 17:13 Der er 6 kommentarer og
1 løsning

2 Jquery plugins på samme side

Hej eksperter

Jeg er begyndt at arbejde kun med jquery plugins (ellers problemer, se mit tidligere spg. http://www.eksperten.dk/spm/968516), men dette giver også problemer ;-)

På en side vil jeg gerne både kunne vise et stort billede ved klik på thumb-billede (http://lokeshdhakar.com/projects/lightbox2/), og samtidig mulighed for load af anden side ved klik på link (http://jquerytools.org/demos/overlay/external.html). Dette vil bare ikke virke sammen. Her testet med denne kode:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>

</head>

<body>

<a href="/upload/admin/st-erhverv3.jpg" rel="lightbox"><img style="border-radius: 9px; -moz-border-radius:9px; -webkit-border-radius:9px; -khtml-border-radius: 9px;" src="/upload/admin/st-erhverv3.jpg"></a>

                    <script src="/js/jquery.tools.min.js"></script>
                    <script>
                    $(function() {

                        // if the function argument is given to overlay,
                        // it is assumed to be the onBeforeLoad event listener
                        $("a[rel]").overlay({

                            mask: 'darkgrey',
                            effect: 'apple',

                            onBeforeLoad: function() {

                                // grab wrapper element inside content
                                var wrap = this.getOverlay().find(".contentWrap");

                                // load the page specified in the trigger
                                wrap.load(this.getTrigger().attr("href"));
                            }

                        });
                        });
                    </script>
                    <style>
                   
                    /* the overlayed element */
                    .apple_overlay {

                        /* initially overlay is hidden */
                        display:none;

                        /* growing background image */
                        background-image:url(/billeder/overlaywhite.png);

                        /*
                          width after the growing animation finishes
                          height is automatically calculated
                          */
                        width:640px;

                        /* some padding to layout nested elements nicely  */
                        padding:40px;

                        /* a little styling */
                        font-size:11px;
                    }

                    /* default close button positioned on upper right corner */
                    .apple_overlay .close {
                        background-image:url(/billeder/overlayclose.png);
                        position:absolute; right:5px; top:5px;
                        cursor:pointer;
                        height:35px;
                        width:35px;
                    }
                    /* use a semi-transparent image for the overlay */
                      #overlay {
                        background-image:url(/billeder/overlaytransparent.png);
                        color:#efefef;
                        height:490px;
                    }
                      /* container for external content. uses vertical scrollbar, if needed */
                          div.contentWrap {
                        height:490px;
                        overflow-y:auto;
                    }
                    .opretindlaeg {
                    float: left;
                    width: 160px;
                    padding: 5px;
                    margin: 0px;
                    background-color: #474646;
                    border-radius: 9px;
                    -moz-border-radius: 9px;
                    -webkit-border-radius: 9px;
                    -khtml-border-radius:  9px;
                    font-family: Arial;
                    font-size: 12px;
                    text-align: center;
                    color: #FFF;
                    }
                    </style>
                   
                    <a href="http://www.eksperten.dk" rel="#overlay" style="text-decoration:none">       
                      <div class="opretindlaeg">Skriv en kommentar</div>
                    </a>
                                       
                    <!-- overlayed element -->
                    <div class="apple_overlay" id="overlay">
                      <!-- the external content is loaded inside this tag -->
                      <div class="contentWrap"></div>
                    </div>
                   
                    <div style="clear: both; height: 10px; border-bottom-style: solid; border-bottom-width: 1px; border-bottom-color: #e2e2e2; margin-bottom: 10px;"></div>
       
</body>
</html>

Skulle det ikke være muligt, da begge er Jquery plugins????

På forhånd tak.
Avatar billede olebole Juniormester
19. oktober 2012 - 20:24 #1
<ole>

Hvad betyder det, at det ikke virker? Har du slået fejlmeddelelser til i din browser? Får du JS-fejl?

/mvh
</bole>
Avatar billede carstenandersen Nybegynder
19. oktober 2012 - 20:43 #2
Der sker det, at load af den eksterne side ikke loades i en "lightbox", men blot som en normal side. Altså virker blot som et almindeligt link.

Hvis jeg fjerner rel="lightbox", virker load fint i en "lightbox". Dermed blokerer den første for den næste jquery plugin - håber, at det giver mening ;-)

Har umiddelbart ikke slået fejlmeddelelser til - hvordan gør man det?
Avatar billede carstenandersen Nybegynder
19. oktober 2012 - 22:00 #3
Har lige testet mere og lavet et par test-filer:

http://www.e-hjemmeside.dk/eksperten1.asp
http://www.e-hjemmeside.dk/eksperten2.asp
http://www.e-hjemmeside.dk/eksperten3.asp

eksperten1.asp viser helt korrek billedet i stort ved at klikke på det lille billede. Siden eksperten2.asp viser helt korrekt indholdet af den loadede side i en "lightbox", mens eksperten3.asp prøver at samle de 2 plugins, men her går det galt. Indholdet af den loadede side vises ikke i en "lightbox", men blot på en ny side og dermed virket som et almindeligt link.

Håber, at ovenstående kan give lidt mere overblik ;-)
Avatar billede carstenandersen Nybegynder
19. oktober 2012 - 22:12 #4
Har også fundet ud af at få vist fejlkoder i explorer. eksperten1.asp og eksperten2.asp blev vist uden fejl, men der kom denne fejl på eksperten3.asp:

Linje: 55
Fejl: Could not find Overlay: lightbox

Giver det mening?
Avatar billede carstenandersen Nybegynder
20. oktober 2012 - 09:27 #5
olebole, brug ikke mere tid i første omgang. Er stødt på http://fancyapps.com/fancybox/, som umiddelbart bør kunne løse problemet :-) "En kode" kan rumme både større billeder, inline, ajax, iframe osv.

Har ikke lige tid til at teste i dag, men giver besked senere, hvis det lykkedes og evt. senere kan være til hjælp for andre, som læser dette indlæg.
Avatar billede carstenandersen Nybegynder
21. oktober 2012 - 07:17 #6
http://fancyapps.com/fancybox/ fungerer bare perfekt :-) Det kan endvidere rigtig mange andre spændende ting.

olebole, kan ikke huske, om du samler på point? Dit indlæg fik sat gang i en masse gode ting :-) Tak for hjælpen.
Avatar billede carstenandersen Nybegynder
18. december 2012 - 05:17 #7
Lukker
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