微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

量角器无法移动价格滑块

如何解决量角器无法移动价格滑块

我是量角器的新手,试图测试价格滑块,该滑块可能会根据提供的价格范围对产品进行排序,因此我无法使用量角器拖动滑块(最小点)。如何移动滑块?

HTML

<span _ngcontent-serverapp-c119="" ngxsliderhandle="" class="ngx-slider-span ngx-slider-pointer ngx-slider-pointer-min" ng-reflect-ng-style="[object Object]" role="slider" tabindex="0" aria-orientation="" aria-label="" aria-labelledby="" aria-valueNow="10" aria-valuetext="10" aria-valuemin="10" aria-valuemax="100" style="opacity: 1; visibility: visible; left: 0px;"></span>

滑块图像

enter image description here

我尝试过

    const pricetogggle = element(
        by.xpath(
            '//span[@class="ngx-slider-span ngx-slider-pointer ngx-slider-pointer-min"]'
        )
    );

browser.actions().dragAndDrop(pricetogggle,{x:100,y:0}).mouseUp().perform();  
and   
browser.actions().mouseMove(pricetogggle).mouseDown().mouseMove({x:100,y:0 }).mouseUp().perform()

解决方法

这就是我用的

     /**
     * Drags first element to the second one. The destination can either be an elementFinder or an offset in pixels
     * @param    {ElementFinder}        $element
     * @param    {(ElementFinder|{x: number,y: number})}       $destination
     * @returns  {promise.Promise}
     */
    let dragAndDrop = ($element,$destination) => browser
            .actions()
            .mouseMove($element)
            .perform()
            .then(() =>
                browser
                    .actions()
                    .mouseDown($element)
                    .perform()
            )
            .then(() =>
                browser
                    .actions()
                    .mouseMove($destination)
                    .perform()
            )
            .then(() =>
                browser
                    .actions()
                    .mouseUp()
                    .perform()
            );

然后致电

await dragAndDrop($leftGrip,{x: 10,y: 0});

但是x可能需要为负值,具体取决于您要移动的方向

,

我对量角器不熟悉。但是,如果您可以向我发送指向在其上实现了滑块的示例站点的链接,则可以尝试使用selenium-webdriver java。

同时,您可以查看我对以下问题的回答中的代码,看它是否对您有帮助。

Issue for Trip Advisor 5-star rating

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。