对于browser.executesript(),javascript中的参数不会从父函数传递给子函数

时间:2017-08-07 22:57:26

标签: javascript protractor arrow-functions es5-shim

我想在量角器中使用以下代码打开新标签(创建一个href并点击)。

如果我直接在setattributes()内部对链接文本进行硬编码,那么它可以正常工作。如果我从调用函数发送linknamelinkname会将错误抛出为未定义。

如何使该功能识别linkname参数。我尝试了箭头并没有奏效。不确定我是否做得对。

function addclickhref(linkname) {
    return browser.driver.executeScript(function () {
        (function (link) {
            document.body.appendChild(link);
            link.setAttribute('href', linkname);
            link.dispatchEvent((function (e) {
                e.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, true, false, false, false, 0, null);
                return e;
            }(document.createEvent('MouseEvents'))))
        }(document.createElement('a')));
    })
}

注意:使用 Ctrl + T 打开新标签的常用方法在量角器中不起作用。所以我开始使用这种解决方法。

1 个答案:

答案 0 :(得分:0)

阅读与

相关联的问题
o