使第一个移动Safari点击“可点击的操作”

时间:2014-09-12 08:33:04

标签: ios angularjs mobile-safari

我看过主题的变化,但没有明确的答案。基本上我想要一个注册点击并将额外内容插入页面的AngularJS指令,然后向下滚动一点以使新内容可见。这是HTML

    <li class="btn btn-default" ng-show="resto.link !== 'none'">
        <p scroll-down onclick="void(0)">
            Full review 
            <span class="glyphicon glyphicon-chevron-right right"></span>
        </p>
    </li>
</ul>

<div class="row">
    <div class="col-xs-12" ng-bind-html="fullReview">
    </div>
</div>

onlick部分是Apple suggestion,似乎不起作用。 然后我有:

.directive 'scrollDown', () ->
    restrict: 'A'
    link: (scope, $elm, attrs) ->
        $elm.on 'click', (e) ->
            e.preventDefault()
            scope.getFullReview () ->
                console.log "Scrolling'
                $("body").animate
                    scrollTop: $elm.offset().top - 100
                ,   "slow"

getFullReview()在AJAX调用后更新模型,然后运行回调。

这在Chrome中运行良好,但在iOS模拟器上运行不正常 - 基本上是第一次点击使页面移动(但没有触发控制台日志 - 我认为这是重新生成的URL栏),需要第二次才能触发指令&# 39; s链接功能。我也安装了fastclick,因为在一些帖子中提到过,但它没有帮助。

需要想法:-)(甚至一些代码可以告诉我什么事件被safari触发)

1 个答案:

答案 0 :(得分:0)

好的,哇,我不明白为什么,但上面的html是页面上的最后一个标记,所以这一切都发生在屏幕的底部。当我为<ul>元素添加一些额外的余量时,一切都开始完美! Safari中的错误?