2013-06-26 11 views
7

मैं बैकबोन.जेएस के साथ प्रयोग कर रहा हूं और बस संदेशों को अपने कंसोल स्क्रीन पर पॉप अप करने की कोशिश कर रहा हूं। कैसे कभी, हर बार जब मैं ऐसा एक त्रुटि प्रदर्शित होने पर रहता है (नीचे नोट)असहज टाइपरर: उदाहरण के लिए एक समारोह की अपेक्षा

Uncaught TypeError: Expecting a function in instanceof check, but got [object Object] backbone.js:1032 
_.extend.setElement backbone.js:1032 
_.extend._ensureElement backbone.js:1104 
Backbone.View backbone.js:986 
child backbone.js:1531 
(anonymous function) pageLoader.js:19 
(anonymous function) 

यहाँ जावास्क्रिप्ट

(function ($){ 

window.PageLoader = Backbone.View.extend({ 
    el: $("section"), 
    events: { 
    "": "initialization", 
    "click #aboutUs" : "aboutUs", 
    }, 

    initialization: function(){ 
    console.log('pageLoader.js initialized\nHome page rendered'); 
    }, 

    aboutUs:function(){ 
    console.log('About us page rendered.'); 
    } 
}); 

var pageLoader = new PageLoader(); 
//pageLoader.initialization(); 
//pageLoader.aboutUs(); 

})(jQuery); 

दायर किया गया है इसके अलावा यहां HTML है

<html> 
    <head> 
    <link rel="stylesheet" type="text/css" href="css/main.css"> 
    <meta /> 
    <meta /> 
    <title>Bus tours and tows</title> 
    </head> 
    <body> 
    <div id="centerWrapper"> 
    <header> 
     <h1>So and so Bus tours and tows</h1> 
    <header/> 
    <nav> 
     <ul> 
     <li><a href="">Home</a></li> 
     <li><a href="#aboutUs">About us</a></li> 
     <li><a href="">Tours</a></li> 
     <li><a href="">Tows</a></li> 
     <li><a href="">Schedule</a></li> 
     <li><a href="">Contact</a></li> 
     </ul> 
    </nav> 
    <section></section> 
    <footer> &#169; Of So and so bus tours and tows. <br /> 
     <i>Questions regarding the construction of the website, please email</i> 
     <a href="mailto: [email protected]">Web Master</a> 
    </footer> 
    <div id="jsFilesAndDepend"> 
     <!-- --> 
     <!-- Filese that are dependant--> 
     <script src="js/dependencies/underscore.js"></script> 
     <script src="js/dependencies/backbone.js"></script> 
     <script src="js/dependencies/jquery-1.10.1.js"></script> 
     <script src="js/pageLoader.js"></script> 
     <script src=""></script> 
     <script src=""></script> 
    </div> 
    </div> 
    </body> 
</html> 

मैं कर रहा हूँ बैकबोन के लिए नया। जेएस। मदद के लिए शुक्रिया।

उत्तर

9

आप रीढ़ की हड्डी से पहले jQuery लोड करने के लिए की जरूरत है,

<script src="js/dependencies/underscore.js"></script> 
    <script src="js/dependencies/jquery-1.10.1.js"></script> 
    <script src="js/dependencies/backbone.js"></script> 

तुम भी खाली घटना कुंजी मान जोड़े को परिभाषित नहीं कर सकते,

events: { 
// "": "initialization", <- this is invalid. 
    "click #aboutUs" : "aboutUs", 
}, 
+0

अरे, प्रतिक्रिया के लिए धन्यवाद! इससे पुरानी त्रुटि से छुटकारा पा लिया गया, लेकिन अब मुझे एक नया मिल रहा है: 'अनकॉट टाइप एरर: नल बैकबोन.जेएस की संपत्ति' 1 'नहीं पढ़ी जा सकती: 1062 _.extend.delegateEvents backbone.js: 1062 बैकबोन। Backbone.js देखें: 988 बच्चे backbone.js: 1531 (अनाम कार्य) पृष्ठ लोडर.जेएस: 1 9 (अज्ञात फ़ंक्शन) ' –

+0

@JoshV आपके पास खाली ईवेंट कुंजी नहीं हो सकती है। – Andrew

+0

ओह ठीक है, मैं देखता हूं। मेरी गलती यह सोच रही थी कि बैकबोन के समान संरचना है। राउटर। मैं कोशिश कर रहा हूँ –

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