javascript - Angularjs 在移动设备上出现 ng-click 问题

标签 javascript jquery angularjs mobile angularjs-ng-click

我遇到了一个很大的性能问题。

我处于 ng-repeat block 中(并且我正在使用 track by id 来提高性能)。 在这个 block 中,我生成以下 dom:

1) 按钮1A 按钮1B 2)按钮2A 按钮2B 3)按钮3A 按钮3B 4)按钮4A 按钮4B 5)按钮5A 按钮5B 6)按钮6A按钮6B

该页面中有一些 ng-show 和 ng-disabled,通过 ng-click 这些按钮设置的变量。

性能非常差。 在移动设备上,我们使用 ng-mobile 和\或 fastclick 来消除 300 毫秒的延迟,但似乎在单击按钮后“更新变量和 dom”需要花费很多时间。

如何提高性能?

非常感谢!

编辑:这是一些代码:

                                  <div class="row" ng-repeat="date in dateRanges track by date.value">

                                          <div ng-show="!date.custom" class="col-xs-14 col-sm-15 date-filter no-rel">
                                              <div class="button-container button-radio"><button data-ng-class="{'radiob disabled': getDate() != date,'radiob active': getDate() == date}" ng-click="setDate(date)"></button></div>
                                              <div class="button-container button-text">
                                                  <button class="select-date" ng-click="setDate(date)">{{date.title}} {{date.noDetails ? '' : date.start | date:'dd/MM/yyyy'}} {{date.noDetails ? '' : '-'}} {{date.noDetails ? '' : date.end | date:'dd/MM/yyyy'}}</button>
                                              </div>
                                          </div>

                                          <div ng-if="date.custom" class="col-xs-2 col-sm-1 date-filter">
                                              <button data-ng-class="{'radiob disabled':getDate() != date,'radiob active':getDate() == date}" ng-click="setDate(date)"></button>
                                          </div>
                                          <div ng-if="date.custom" class="col-xs-14 col-sm-15 date-filter no-rel">
                                              <div class="row" data-ng-class="{'has-error': hasErrorComune && criteriRicerca_DateRange.custom}">
                                 </div>                

                                          <div class="col-md-16 mrg-t-10 text-center">
                                              <button id="Undo" ng-click="Undo()" class="btn btn-esci mrg-r-10">Undo</button>

                                              <button type="submit" id="dropdownMovimentiConferma" ng-click="Operation()" data-ng-disabled="criteriRicerca_DateRange.custom && (hasErrorComune || hasErrorStart || hasErrorEnd)" class="btn btn-primary">OK</button>


    </div>

最佳答案

您正在真实的移动设备(硬件)还是模拟器上进行测试?

如果是真实的,请检查任务管理器和 CPU 利用率。

关于javascript - Angularjs 在移动设备上出现 ng-click 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26327995/

相关文章:

javascript - 在 HTML 页面上绘制箭头以可视化文本跨度之间的语义链接

javascript - 变得更加 OO 多个 For 循环 JS

javascript - 在 Ajax 应用程序中获取 Twitter oauth 访问 token

jquery - 对于每个人来说哪个更快?

javascript - 随机区间向上计数器

javascript - 保存对象的两种方式,有什么区别?

javascript - 将最后一个元素保留在具有相同属性的数组中

javascript - 炸药输入添加 Angular.js

javascript - 如何在airmode 和toolbar 模式之间切换summernote 编辑器?

angularjs - 如何在 Angularjs 中观察按键组合?