2016-09-18 2 views
3

Ich versuche gerade eine Nachricht in der Konsole zu schreiben, wenn die Größe des Fensters weniger als 700 px beträgt.Code ausführen, wenn der Bildschirm eine bestimmte Breite hat

Die Dinge, die ich versucht habe, ist:

if(window.innerWidth < 700){ 
console.log("hello"); 
} 

Und

if(screen.width < 700){ 
console.log("hello"); 
} 

Ich bekomme keine Fehler meassages aber der Code nicht ausgeführt. Wenn ich "px" nach dem 700 gebe, bekomme ich die Fehlermeldung "Uncaught SyntaxError: Unexpected identifier".

Antwort

5

Sie müssen dies innerhalb der window 's resize Event Listener setzen. Außerdem müssen Sie window.innerWidth verwenden und es wird immer ein ganzzahliger Wert zurückgegeben.

if (window.attachEvent) { 
 
    window.attachEvent('onresize', function() { 
 
    if (window.innerWidth < 760) 
 
     console.log("Less than 760"); 
 
    else 
 
     console.log("More than 760"); 
 
    }); 
 
} else if (window.addEventListener) { 
 
    window.addEventListener('resize', function() { 
 
    if (window.innerWidth < 760) 
 
     console.log("Less than 760"); 
 
    else 
 
     console.log("More than 760"); 
 
    }, true); 
 
} else { 
 
    //The browser does not support Javascript event binding 
 
}

+1

Als Neben Beachten Sie, dass der beste Ansatz, abhängig von der Browserunterstützung, darin besteht, [wind ow.matchMedia (mediaQueryString)] (https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia) –

+0

@ A.Wolff Danke für die Idee ... das wusste ich nicht . ':)' Ich schaue es mir an und aktualisiere meine Antwort entsprechend ... –

+1

Ich bin ziemlich neu in Javascript und habe keine Sachen wie .attachEvemt und. addEventListener. Ich habe meinen Code zu arbeiten, aber ich werde etwas darüber lesen müssen, was der Code wirklich tut und warum es funktioniert. Wie auch immer, Danke! Gute Antwort! –

0
onResize(); 
window.addEventListener('resize', onResize); 

function onResize(){ 
    var width = document.documentElement.clientWidth; 
} 
0

Sie müssen sich für 'die Größe' Ereignis auf 'Fenster' hören:

window.addEventListener('resize', resize); 

function resize() { 

    if (window.innerWidth < 700) { 

     console.log('window.innerWidth < 700'); 
     // window.removeEventListener('resize', resize); // once 
    } 
} 

weitere Informationen über .addEventListener: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener

+1

Sie sollten mehr Informationen zur Verfügung stellen ... Wie ist diese Antwort besser als meine? Nur neugierig, nicht die Schuld ... ':)' –

+0

Vielen Dank, ich habe den Code zu arbeiten, aber ich muss über die erste Zeile lesen, ich habe nicht verwendet .addEventListener vor. –

+0

@PraveenKumar wenn ich diese Antwort schreibe gibt es keine Antwort. –

Verwandte Themen