jQuery 在 iPad 上运行速度极慢

标签 jquery performance ipad

我正在我们正在研究的测试用例上运行一些 jQuery,它在我们的 iPad 2 上运行极其缓慢。

不过,它在我们的台式机和笔记本电脑上 react 敏捷且 react 灵敏。我尝试删除所有选择器(如果可能)并使用存储的引用,但这没有多大帮助。

在此更改之前,它是 http://jsfiddle.net/EEGgv/5/而之后是http://jsfiddle.net/EEGgv/6/

这是当前的 jQuery 代码:

$().ready(function () {
    var $varSelected = 'undefined';
    var $this = 'undefined';
    var varPrev = '';
    var varNew = '';

    $('.btn').click(function () {
        $this = $(this);

        if ($varSelected !== 'undefined') {
            // Get previous value
            varPrev = $varSelected.text();

            // Find value we're trying to add
            varAdding = $this.attr('value');

            if (varAdding == 'Clr') {
                varNew = '';
            } else {
                varNew = varPrev + varAdding;
            }

            // Write new value
            $varSelected.text(varNew);
        }
    });

    $('.qtyBox').click(function () {
        $this = $(this);

        // Check if we've previously had a selected box
        if ($varSelected === 'undefined') {
            // Didn't have one before -- nothing special
        } else {
            // Had one selected. We need to unselect it.
            $varSelected.removeClass('Selected');
        }

        // Select the one we have now
        $varSelected = $this;

        // Add formatting
        $this.addClass('Selected');

        // Clear value
        varNew = '';
        $this.text(varNew);
    });
});

我已将/5/版本(预引用)上传到 http://test.projectdavis.com/test.html而/6/versoin(引用文献)已上传到http://test.projectdavis.com/test2.html .

有人有任何见解吗?

谢谢

最佳答案

我能够在 iPad 2 上测试您的页面。输入延迟似乎是移动点击事件延迟,即移动浏览器上的点击事件在 0.3 秒后触发(https://developers.google.com/mobile/articles/fast_buttons?hl=de-DE 。)。这种延迟是为了让浏览器可以监听双击。移动浏览器提供了四个附加事件处理程序,您可能感兴趣的一个是 clickend。当用户从屏幕上抬起手指时,会触发 clickend 事件。

下面的代码来自MDN https://developer.mozilla.org/en-US/docs/Web/Guide/DOM/Events/Touch_events

var el = document.getElementsById("MyButtonID");
el.addEventListener("touchend", handleEnd, false);

关于jQuery 在 iPad 上运行速度极慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16903084/

相关文章:

javascript - 导航栏 anchor 无法使用 js 正确定向

android - 使用倒计时设置按钮启用

Javafx Scene.snapshot方法性能低下

iphone - iOS 数据存储指南。在这种情况下我该怎么办?

javascript - 在 Jquery 中获取同名表单元素的内容。访问对象的子对象

jquery - 为什么我无法使用 jQuery .load 方法加载 Flickr.com?

javascript - 无法使用 jQuery 选择器访问单击事件

performance - 为什么 PLSQL 比 SQL*Plus 慢

ios - 协议(protocol)的 Swift 实例

ios - 为什么 UICollectionView 偏移量在键盘出现时发生变化