使用Google Chrome版本30至33时出现明显的多个故障



我一直在开发图像滑块主题(日期为2015年2月20日-Jssor Slider 18.0开发工具包)(Jssor.Slider.FullPack\demos no jquery\Image-Slider-2.source.html with Jssor.Slider.min.js)。我没有修改javascript代码。我在Chrome版本30到33中发现了各种脚本实现的失败,其中包括这个图像滑块和开发工具包中的其他几个。上一个一月的开发工具包也显示了错误。没有任何其他浏览器或这些浏览器的尚未指示和/或解决的版本的问题。

我发现调整函数SetPosition"elseif"来自:

"否则,如果($Jssor$.$IsBrowserChrome()&&$Jssor$.$BrowserVersion()>=30&&$Jsor$.$Browser Version()<34)"

至:

"否则如果($Jssor$.$IsBrowserChrome()&&$Jssor$.$BrowserVersion()>=32&&$J ssor$.[$BrowserVersion<34)"

    function SetPosition(elmt, position) {
        var orientation = _DragOrientation > 0 ? _DragOrientation : _PlayOrientation;
        var x = _StepLengthX * position * (orientation & 1);
        var y = _StepLengthY * position * ((orientation >> 1) & 1);
        if ($Jssor$.$IsBrowserChrome() && $Jssor$.$BrowserVersion() < 38) {
            x = x.toFixed(3);
            y = y.toFixed(3);
        }
        else {
            x = Math.round(x);
            y = Math.round(y);
        }
        if ($Jssor$.$IsBrowserIE() && $Jssor$.$BrowserVersion() >= 10 && $Jssor$.$BrowserVersion() < 11) {
            elmt.style.msTransform = "translate(" + x + "px, " + y + "px)";
        }
        else if ($Jssor$.$IsBrowserChrome() && $Jssor$.$BrowserVersion() >= 30 && $Jssor$.$BrowserVersion() < 34) {
            elmt.style.WebkitTransition = "transform 0s";
            elmt.style.WebkitTransform = "translate3d(" + x + "px, " + y + "px, 0px) perspective(2000px)";
        }
        else {
            $Jssor$.$CssLeft(elmt, x);
            $Jssor$.$CssTop(elmt, y);
        }
    }

在我能够深入研究它之前,我将使用它作为一个快速修复程序。有人注意到这一点了吗?

下面的代码是为了提高向左滑动的性能<->适用于chrome(版本30至33)。

else if ($Jssor$.$IsBrowserChrome() && $Jssor$.$BrowserVersion() >= 30 && $Jssor$.$BrowserVersion() < 34) {
    elmt.style.WebkitTransition = "transform 0s";
    elmt.style.WebkitTransform = "translate3d(" + x + "px, " + y + "px, 0px) perspective(2000px)";
}

大约一年后,chrome升级到了版本40。现在是时候删除它了。

谢谢。

最新更新