Avatar billede Kast20 Seniormester
16. april 2015 - 21:51 Der er 1 kommentar og
1 løsning

Find fejlen i scriptet

Hej,

Jeg har et jQuery script som egentlig virker, men samtidig melder mit javascript console en script fejl som jeg ikke rigtig kan løse.

Scriptet der skal åbne et pop-up vindue:

jQuery(document).ready(function($) {
    window.onload=function() {
        document.getElementById('popup').onclick=function() {
            var w = window.open(this.href, this.target,
                'width=650,height=562,toolbar=0,menubar=0,location=0,status=0,scrollbars=0,resizable=1,left=0,top=0');
            return (!w); // opens in new window/tab if allowed
        }
    }
});

Fejlen i javascript console:

Uncaught TypeError: Cannot set property 'onclick' of nullcustom_script.js:108 window.onload

Den henviser til denne linie: document.getElementById('popup').onclick=function() {

Ændre gerne i scriptet, hvis du har en bedre løsning. Vinduet skal bare være i den specificeret størrelse, uden toolbar m.v. når man klikker på et link med en tilknyttet id="popup" :-)
Avatar billede jakobdo Ekspert
17. april 2015 - 08:23 #1
Kan det ikke være et spørgsmål om at udlæse:

var myPopup = document.getElementById('popup');

if (myPopup){
myPopup.onclick=function() {
//Din kode...
}
}else{
alert("myPopup findes ikke");
}
Avatar billede CodeWizard Novice
21. april 2015 - 20:09 #2
Nu hvor du alligevel er igang med jQuery, hvorfor så ikke bruge det

jQuery(document).ready(function($) {
    $('#popup').click(function () {
        var link = $(this),
              w = window.open(link.attr("href"), this.attr("target"),  'width=650,height=562,toolbar=0,menubar=0,location=0,status=0,scrollbars=0,resizable=1,left=0,top=0');
            return (!w);
    });
});
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

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