View 如何使用backbone.js跨多个视图实现通用功能
您好,我正在尝试使用backbone.js跨多个视图实现自定义功能。例如,我需要让应用程序中的所有输入文本框在接收焦点时更改其视觉外观。 我正在考虑从Backbone.View.extend继承window.BaseView,然后让我的所有视图扩展BaseView。View 如何使用backbone.js跨多个视图实现通用功能,view,backbone.js,extend,View,Backbone.js,Extend,您好,我正在尝试使用backbone.js跨多个视图实现自定义功能。例如,我需要让应用程序中的所有输入文本框在接收焦点时更改其视觉外观。 我正在考虑从Backbone.View.extend继承window.BaseView,然后让我的所有视图扩展BaseView。 你能告诉我方向对不对吗?你还有其他建议吗?您是否实现了类似的功能?我没有将主干用于类似的任务,因为不同的视图具有不同的元素,并且多次绑定相同的焦点函数也是一种浪费。我要做的是: //If document is the contai
你能告诉我方向对不对吗?你还有其他建议吗?您是否实现了类似的功能?我没有将主干用于类似的任务,因为不同的视图具有不同的元素,并且多次绑定相同的焦点函数也是一种浪费。我要做的是:
//If document is the container for your application, else could be #myapplication and so on.
jQuery( document ).delegate( 'input[type="text"]', "focusin focusout",
function(e){
if( e.type == "focusin" ) {
jQuery( this ).addClass("textbox-focused");
}
else {
jQuery( this ).removeClass( "textbox-focused" );
}
}
);
或CSS(不确定是否支持浏览器):
我没有将主干用于类似的任务,因为不同的视图具有不同的元素,并且多次绑定相同的焦点函数也是浪费。我要做的是:
//If document is the container for your application, else could be #myapplication and so on.
jQuery( document ).delegate( 'input[type="text"]', "focusin focusout",
function(e){
if( e.type == "focusin" ) {
jQuery( this ).addClass("textbox-focused");
}
else {
jQuery( this ).removeClass( "textbox-focused" );
}
}
);
或CSS(不确定是否支持浏览器):
我将把公共功能放在一个基本原型中,并让所有视图扩展它,或者我将创建一个具有该功能的mixin对象,并用mixin扩展视图。我将把公共功能放在一个基本原型中,并让所有视图扩展它,或者我将创建一个具有该功能和使用mixin扩展视图