12
Я знаю, что эта проблема возникает миллион раз, но я прошел через ответы и ни один из них не помог. .jQuery & Backbone click events not firing
JS Fiddle: http://jsfiddle.net/ZrYYy/
var LoginView = Backbone.View.extend({
initialize: function() {
console.log('Login View Intialized');
this.el = $('#login-container');
},
// Setup the events (mainly the login)
events: {
// Login - function
"click #login-btn" : "checkLogin"
},
// Actually authorization function
checkLogin: function() {
console.log("Authorizing login details with server...");
}
});
// Get it all up and going
var newLogin = new Login();
var loginView = new LoginView({model: newLogin});
В скрипку, когда я связываю нормальный $ ('# Войти-BTN') нажмите(); событие прекрасно работает, хотя оно не в моей собственной установке (с хромом). Событие clickbone click не работает.
Это то, что заголовок выглядит как на мой собственный код
<link href="assets/admin/css/bootstrap.css" rel="stylesheet" type="text/css">
<link href="assets/admin/css/bootstrap-responsive.css" rel="stylesheet" type="text/css">
<link href="assets/admin/css/style.css" rel="stylesheet" type="text/css">
<script src="assets/admin/js/jquery-1.9.1.min.js"></script>
<script src="http://documentcloud.github.com/underscore/underscore-min.js"></script>
<script src="http://documentcloud.github.com/backbone/backbone-min.js"></script>
<script src="assets/admin/backbone/login.js"></script>
<script src="assets/admin/js/bootstrap.min.js"></script>
Я знаю, что его лучшая практика, чтобы включить их в сноске, но сейчас, пока эта проблема существует не имеет значения (?).
Есть ли ошибки в консоли для разработчиков Chrome? –
Нет, нет, привязка события клика от консоли непосредственно через jQuery, похоже, работает. Я пробовал использовать .on() и т. Д. Ни один из них не работает. Магистраль просто терпит неудачу .. – SamV
'
я должен был установить эль без JQuery для того, чтобы работать в JSFiddle ... el: 'body'
источник
2013-10-08 16:08:53 webninjataylor
Как объясняется другим ответом, для
events
для работы вам нужно использоватьel
.el
свойство необходимо для создания основы для регистрации событий путем ссылки на элемент вel
. Но в некоторых случаях html еще не создан. В таких случаях вы можете использоватьtagName
вместоel
.tagName
полезно для генерации элемента динамически точно так же, какdocument.createElement
.источник
2016-07-10 12:45:45
Магистральные сети el Node определяют рабочее пространство контроллера просмотра.Только узлы внутри el будут затронуты, прослушаны или изменены из метода рендеринга Backbones.
Установите el как можно ближе к области, которую вы хотите сохранить с помощью контроллера View, чтобы избежать перекрестков или нежелательного воспитания с помощью других контроллеров View.
Imagine View1 включает в себя Area View2 и визуализирует его узлы. View2 больше не работает, если он содержит ссылки на узлы, потому что они могут быть разбиты на рендеринг из View1.
Знайте о перекрестках и его рисках. Магистраль - это Библиотека, а не Рамка и не защитит вас от глупостей.
источник
2016-11-23 07:55:20 Steffomio