Touch-события

Touch-события

This page has been translated automatically

We want to provide you with the latest help content in your language as soon as possible. This page has been translated automatically and may contain grammatical errors or inaccuracies. We want this content to be useful to you. Please let us know at the bottom of this page if this information was helpful.

View the original article in Russian: Touch-события

Starting with version 7.1.4.0, a Touch property with a set of methods has been added to the CommandCenter.Tab. The Touch property has basic methods: TouchStart , TouchEnd , TouchMove , TouchCancel , as well as complex methods with Touch overloads, SwipeIntoView , SwipeBetween and others.

This is only the first stage of implementing touch events in the Chrome browser, so for now they are only available from C # code. In the next versions, control from the interface will be implemented.

Examples of

Emulation of touch-pressing

var tab = instance.ActiveTab; var init = tab.FindElementByXPath("/html/body/button", 0); // Π˜Ρ‰Π΅ΠΌ HTML элСмСнт Ρ‡Π΅Ρ€Π΅Π· XPath tab.Touch.Touch(init); // Π–ΠΌΡ‘ΠΌ ΠΏΠΎ Π½Π΅ΠΌΡƒ

Β 


Scrolling

var tab = instance.ActiveTab; HtmlElement init = tab.FindElementByXPath(".//button", 0); // Π˜Ρ‰Π΅ΠΌ HTML элСмСнт Ρ‡Π΅Ρ€Π΅Π· XPath tab.Touch.SwipeIntoView(init); // Π‘ΠΊΡ€ΠΎΠ»Π»ΠΈΠΌ экран Ρ‚Π°Ρ‡Π°ΠΌΠΈ Π΄ΠΎ Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ HTML элСмСнта

Β 


Swipe right

var tab = instance.ActiveTab; // Π‘ΡƒΠ΄Π΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ свайп Π²Π½ΡƒΡ‚Ρ€ΠΈ HTML элСмСнта. Боставим XPath Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. var canvas = tab.FindElementByXPath(@"//*[@id=""canvas""]", 0); // ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹: ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту var width = canvas.BoundingClientWidth; var height = canvas.BoundingClientHeight; // ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ касания ΠΏΠΎ оси X, ΠΈ послСднСго - ΠΊΠΎΠ³Π΄Π° отпускаСм ΠΏΠ°Π»Π΅Ρ† var offsetX = width / 4; var minX = canvas.DisplacementInBrowser.X + offsetX; var maxX = minX + width - 2*offsetX; // ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ касания ΠΏΠΎ оси Y, ΠΈ послСднСго - ΠΊΠΎΠ³Π΄Π° отпускаСм ΠΏΠ°Π»Π΅Ρ† var offsetY = height / 4; var minY = canvas.DisplacementInBrowser.Y + offsetY; var maxY = minY; // Π”Π΅Π»Π°Π΅ΠΌ свайп Π²ΠΏΡ€Π°Π²ΠΎ tab.Touch.SwipeBetween(minX, minY, maxX, maxY);

Settings

By default, a number of parameters are taken into account and randomized: speed, acceleration, motion curve, and others. All movements will be as natural as possible out of the box, but if you need to make adjustments to the behavior of touch events, there is such a possibility too.

var tab = instance.ActiveTab; var parameters = tab.Touch.GetCopyOfTouchEmulationParameters(); // ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ настройки Ρ‚Π°Ρ‡Π° // Π”Π°Π»ΡŒΡˆΠ΅ пишСм "parameters." ΠΈ послС Ρ‚ΠΎΡ‡ΠΊΠΈ syntax editor подскаТСт доступны поля этого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. //////////////////////// // НСкоторыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ //////////////////////// parameters.Acceleration = 1.2f; // ΠŸΠΎΡΡ‚Π°Π²ΠΈΠΌ ускорСниС посильнСС parameters.MinCurvature = 0; // ΠŸΡƒΡΡ‚ΡŒ минимальная ΠΊΡ€ΠΈΠ²ΠΈΠ·Π½Π° - прямая линия parameters.MaxCurvature = 1; // А максимальная ΠΊΡ€ΠΈΠ²ΠΈΠ·Π½Π° - ΠΎΡ‡Π΅Π½ΡŒ ΡΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ·Π³ΠΈΠ± // Изгиб ΠΊΡ€ΠΈΠ²ΠΎΠΉ Π±Π»ΠΈΠΆΠ΅ ΠΊ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ parameters.MinCurvePeakShift = 0f; parameters.MaxCurvePeakShift = 0.2f; parameters.MinStep = 1; // ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ½ΠΈΠΆΠ΅ parameters.MaxStep = 60; // А Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Π°Ρ - Π²Ρ‹ΡˆΠ΅ parameters.RightThumbProbability = 0.7f; // Π’ 70% случаСв Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π°Π²Ρ‹ΠΉ ΠΏΠ°Π»Π΅Ρ†, Π° Π² 30% - Π»Π΅Π²Ρ‹ΠΉ. tab.Touch.SetTouchEmulationParameters(parameters); // Π’ΠΠ–ΠΠž: ΠŸΠ Π˜ΠœΠ•ΠΠ―Π•Πœ ΠΠΠ‘Π’Π ΠžΠ™ΠšΠ˜ - Π˜ΠΠΠ§Π• ΠΠ˜Π§Π•Π“Πž НЕ Π˜Π—ΠœΠ•ΠΠ˜Π’Π‘Π― // Π•Ρ‰Ρ‘ большС настроСк здСсь: https://help.zennolab.com/en/v7/zennoposter/7.1.4/webframe.html#topic951.html // instance.ActiveTab.Touch.SetTouchEmulationParameters(new TouchEmulationParameters()); // УстанавливаСм настройки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

Β 

Demonstration project

Download

Β