簡體   English   中英

量角器:如何拉伸和替換元素?

[英]Protractor: How I can stretching and replasing elements?

我有這樣的形式: 在此處輸入圖片說明

我想模仿柱子伸展。 我也可以更改列標題的位置。 所以我想模仿它。 我想我應該使用webdrivers方法。 但是我不知道是什么樣的。

聽起來好像是dragAndDrop()瀏覽器操作的好用例:

browser.actions().
    dragAndDrop(elm, {x: 400, y: 20}).
    perform();

您也可以從一個元素拖放到另一個元素:

browser.actions().
    dragAndDrop(elm, targetElm).
    perform();

而且,僅供參考,這是規格:

/**
 * Convenience function for performing a "drag and drop" manuever. The target
 * element may be moved to the location of another element, or by an offset (in
 * pixels).
 * @param {!webdriver.WebElement} element The element to drag.
 * @param {(!webdriver.WebElement|{x: number, y: number})} location The
 *     location to drag to, either as another WebElement or an offset in pixels.
 * @return {!webdriver.ActionSequence} A self reference.
 */
webdriver.ActionSequence.prototype.dragAndDrop = function(element, location) {
  return this.mouseDown(element).mouseMove(location).mouseUp();
};

我想做一個有趣的筆記。 我認為:

<div class="n-grid-col-resize ng-scope" ng-if="column.resizable" ng-dblclick="menuOptions.onColumnAutoSize(column)" jQuery111202531640218477999="237"/>

在圖片中,我應該單擊並移動它是垂直線。 長期以來,我不明白為什么dragAndDrop(),doubleClick()等方法無法使用。 答案很簡單。 我應該得到一個對象中心。 因此,代替:

browser.actions().doubleClick(my_elem).perform();

我應該寫:

browser.actions().mouseMove({x: x1, y: x2}).doubleClick().perform();

哪里

 var x1 = my_elem_x + my_elem_width/2;                
 var x2 = my_elem_y + my_elem_height/2;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM