我有一个单页面应用程序和订单部分列表,如下所示:
<form>
<form-order> // section
<ElementA>
<ElementB>
<ElementC>
<form-order>
<ElementA>
<ElementB>
<ElementC>
<form-order>
<ElementA>
<ElementB>
<ElementC>
</form>
并在nightwatch页面对象中:
form-order:{
selector:'div[class=form-order]',
elements:{
ElementA:'#ElementA',
ElementB:'#ElementB',
ElementC:'#ElementC',
}
}
当我调用此部分时,将会有3个,相同的选择器,所以第一个将被使用。问题是如何设置:nth-child()为此部分和元素内,它应该是像这样:
form-order:{
selector:"div[class=form-order]:nth-child("+n+")",
elements:{
ElementA:"#ElementA",
ElementB:"#ElementB",
ElementC:"#ElementC",
}
}
但是我不知道如何在nightwach.js中做到这一点或有任何解决方案吗? 感谢阅读。
答案 0 :(得分:0)
我不确定您是否可以像您建议的那样轻松地将它们全部定义在一起,但您可以单独定义它们:
elements: {
elementA1 : '.select-content:eq(0) #ElementA',
elementA2 : '.select-content:eq(1) #ElementA',
elementC3 : '.select-content:eq(2) #ElementC' //and so on
}
在您找到更好的解决方案之前,这可能会让您前进。当然,您应该根据您拥有的实际HTML进行调整。