从一般事件中排除着名角度中的输入事件

时间:2015-02-10 15:44:05

标签: famo.us famous-angular

我正在编写一个名为/ angular的移动应用程序。在任何视图中向右滑动都会显示菜单。为此我设置了以下事件处理:

var MouseSync   = $famous["famous/inputs/MouseSync"];
var TouchSync   = $famous["famous/inputs/TouchSync"];
var GenericSync = $famous['famous/inputs/GenericSync'];

$scope.sync = new GenericSync(
        ["mouse", "touch"], 
        {direction: GenericSync.DIRECTION_X}
);

$scope.sync.on('update', function(data){
    // do stuff while swiping
});

$scope.sync.on('end', function(data) {
    // do stuff at swipe end
});

以上一切正常。我现在的问题是我在某些视图中有html输入,由于上述原因我无法访问/输入。包含它们的表面将它们的事件管道化为“同步”:

<fa-surface fa-pipe-to="sync">
    <input type="text"></input>
</fa-surface>

我知道这里的问题是我的输入上的点击事件被传递给同步。我只是不知道该怎么办。有什么想法吗?

非常感谢!

1 个答案:

答案 0 :(得分:0)

您是否尝试过HTML5自动对焦属性<input type="text" autofocus></input>或将焦点设置为点击? <input type="text" ng-click="focus($event)"></input>

对于第二个选项,您需要在范围上设置一个函数,如下所示:

$scope.focus = function(ev){ ev.target.focus() }