2014-04-17 5 views
5

काम नहीं कर रहा है कि क्यों यह काम नहीं करता नहीं जानता:जावास्क्रिप्ट आकार घटना

window.addEventListener('load', setSize(), false); 
window.addEventListener('resize', setSize(), false); 

function setSize(){ 
    width = window.innerWidth; 
    console.log(width); 
} 

यह भार के बाद चौड़ाई सही लॉग करता है, लेकिन यह काम नहीं करता है जब मैं आकार में परिवर्तन कर।

उत्तर

18
window.addEventListener('load', setSize(), false); 
window.addEventListener('resize', setSize(), false); 

होना चाहिए:

window.addEventListener('load', setSize, false); 
window.addEventListener('resize', setSize, false); 

इसके बजाय समारोह को क्रियान्वित करने के लिए, हम यह करने के लिए एक संदर्भ के पारित करने के लिए की जरूरत है।

+2

@OP - ध्यान दें कि अंतर 'सेटसाइज़() 'परिणाम को एक तर्क के रूप में पास करेगा, और' सेटसाइज 'फ़ंक्शन को स्वयं तर्क के रूप में पास कर देगा। वह अंतर है। –

संबंधित मुद्दे