锚链接使用iScroll在stellar.js视差中不起作用

时间:2015-04-08 15:13:57

标签: javascript jquery iscroll stellar.js

我已按照以下链接发布的教程在网站上实施了视差,该链接使用stellar.jsiScroll移动设备:http://markdalgleish.com/2012/10/mobile-parallax-with-stellar-js/

一切看起来都不错,视差也有效,但问题是页面中的外部链接无法在iPad和移动设备上打开。我正在使用iScroll 4,因此我升级到iScroll 5并相应地调整了对iScroll 5的初始化调用。现在链接在这些设备中打开,但性能却无法忍受。有没有办法在使用iScroll 4时打开外部链接,或者在使用iScroll 5时提高性能?

1 个答案:

答案 0 :(得分:0)

显然,iScroll在点击包装器内的任何元素时都有一些事件处理程序。所以我添加了代码来忽略任何锚标签的点击以及onBeforeScrollStart参数中的select,input和textarea。

为此,请使用以下代码替换iScrollInstance = new iScroll('wrapper');

iScrollInstance = new iScroll('wrapper', {
                    handleClick: true,
                    onBeforeScrollStart: function (e) {
                        var target = e.target;
                        if (target.tagName != 'A' && target.tagName != 'SELECT' && target.tagName != 'INPUT' && target.tagName != 'TEXTAREA')
                                e.preventDefault();
                    }
                });