我正在进行中/大规模angularjs应用。根据用户是来自移动设备还是桌面设备,我有不同风格的视图。
我的问题是使用角度设置的自动对焦。在桌面上,这是有益的,在移动设备上它是一种糟糕的用户体验。如何仅在移动设备上删除输入字段上的自动对焦。
我使用简单的if else语句来指示要加载的视图。加载移动视图时有没有办法设置focus = false?
str(some_animal)
答案 0 :(得分:1)
Solved it. Just had to add the window.innerWidth to my if statement in the focus directive.
angular.module('App.Directives').directive('focus', function($timeout) {
return {
scope: {
trigger: '@focus'
},
link: function(scope, element) {
scope.$watch('trigger', function(value) {
if (value === "true" && window.innerWidth >= 800) {
$timeout(function() {
element[0].focus();
});
}
});
}
};
});