2017-03-31 17 views
0

ドラッグアンドドロップの要素に1つのエディタページがあり、エディタページはSVG要素です。私はこのコードを使用していますが、それは、私はドラッグを実装し、次のようにドロップしている分度器のSVG要素でのドラッグアンドドロップ

var dragAndDrop = require('html-dnd').code; 
var dragDataType=element(By.id('{"name":"Filter","type":"Filter","icon":"filter_list","iconHex":""}')); 
var dropDataType= element(By.id('___content')); 
var offsetX = 1; 
var offsetY = 1; 
var offsetX = 300; 
var offsetY = 250; 
browser.executeScript(dragAndDrop, dragDataType, dropDataType, offsetX,offsetY); 

答えて

0

が動作していない:そこではないので、それは、)(browser.actionsを使用して行われる。ここ

xxxx.protorype.dragNDrop= function(){ 
    var offsetx = <offsetValueX>; 
    var offsety = <offsetValueY>; 
    this.getDropIndex(dragElement, function (dropIndex) { 
    var dropElement = element(<locator>).get(dropIndex); 
    dropElement.getLocation().then(function (location) { 
     offsetx = Math.round(offsetx + location.x); 
     browser.actions().mouseMove(dragElement) 
     .mouseDown() 
     .mouseMove(dropElement) 
     .mouseMove(dropElement, {x: offsetx, y: offsety}) 
     .mouseUp().perform(); 
    }); 
    browser.waitForAngular(); 
    expect(element(<your locator>).getAttribute()).toBe(dragElement.getAttribute()); 
    }); 
    }; 

    xxxx.prototype.getDropIndex = function (elementHolder, callback) { 
    browser.waitForAngular(); 
    elementHolder.getText().then(function (elementName) { 
    var index; 
    if (callback) { 
     callback(index); 
    } 
    }); 
}; 

ビルド機能で。私はこのように使いました。

関連する問題