通过主干中的上述事件,我无法检测方向。它不起作用。有没有其他选择?通过绑定(bind)事件或其他东西?或者我的代码中有问题?
var HomeView = Backbone.View.extend({
template: Handlebars.compile(template),
events: {
"click .log_out": "log_out",
"click .prove": "prove",
"orientationchange": "onOrientationChange"
},
initialize: function () {
console.log("inhomeview");
this.render();
},
render: function () {
//var context = JSON.parse(JSON.stringify(this.model));//eliminare
var context = this.model;
var html = this.template(context);
console.log(html);
$('#pagina').empty();
$('#pagina').append(this.$el.html(html));
return this;
},
onOrientationChange: function () {
if (window.orientation === 90 || window.orientation === -90) {
alert('you are in landscape');
}
}
});
最佳答案
仅当您将 view el
设置为 window
时,它才有效。
或者您可以手动订阅orientationchange
事件:
initialize : function() {
$(window).on('orientationchange', this.onOrientationChange);
}
关于javascript - 事件方向更改在主干中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16511112/