网页的内容可以有条件地显示。 简而言之,可以根据地理位置、用户角色或 IP 地址等不同因素动态更改页面内容。 例如,页面上可以显示新用户的欢迎向导模式或根据区域设置具有不同内容的文本框。 若要在这种情况下监视 DOM 元素,可以使用选择语句自定义录制的监视脚本。

若要创建基于网页上显示的 Web 元素执行不同操作的动态脚本,请将 if-else 语句添加到 桌面版“每个步骤脚本工具”中的脚本中。

对于内联脚本编辑,在”高级 设置”菜单中启用”允许 手动编辑 脚本” 功能。 另请参阅 EveryStep 脚本工具:类、方法、属性等

if-else 语句示例

Delay ("6sec".ToDuration ());

if (tab0.IsElementPresented("//BUTTON[@ID=\"start\"]/STRONG[normalize-space(text())=\"Edit order\"]")){
tab0.Element ("//BUTTON[@ID=\"start\"]/STRONG[normalize-space(text())=\"Edit order\"]").Click ();
Delay ("3sec".ToDuration ());
if (tab0.IsElementPresented("//INPUT[@ID=\"chkOrder\"]")) tab0.Element ("//INPUT[@ID=\"chkOrder\"]").Click ();
Delay ("1sec".ToDuration ());
if (tab0.IsElementPresented("//BUTTON[@ID=\"btnClose\"]")) tab0.Element ("//BUTTON[@ID=\"btnClose\"]").Click ();
Delay ("1sec".ToDuration ());
if (tab0.IsElementPresented("//BUTTON[@ID=\"end\"]/STRONG[normalize-space(text())=\"End session\"]")) tab0.Element ("//BUTTON[@ID=\"end\"]/STRONG[normalize-space(text())=\"End session\"]").Click ();
Delay ("5sec".ToDuration ());
}
else if (tab0.IsElementPresented("//BUTTON[@ID=\"start\"]/STRONG[normalize-space(text())=\"Start shopping\"]")) {
tab0.Element ("//BUTTON[@ID=\"start\"]/STRONG[normalize-space(text())=\"Start shopping\"]").Click ();
Delay ("1sec".ToDuration ());
tab0.Element ("//INPUT[@ID=\"chkBalance\"]").Click ();
Delay ("1sec".ToDuration ());
tab0.Element ("//BUTTON[@ID=\"btnOk\"]").Click ();
Delay ("1sec".ToDuration ());
if (tab0.IsElementPresented("//INPUT[@ID=\"chkOrder\"]")) tab0.Element ("//INPUT[@ID=\"chkOrder\"]").Click ();
Delay ("1sec".ToDuration ());
if (tab0.IsElementPresented("//BUTTON[@ID=\"btnClose\"]")) tab0.Element ("//BUTTON[@ID=\"btnClose\"]").Click ();
Delay ("1sec".ToDuration ());
if (tab0.IsElementPresented("//BUTTON[@ID=\"end\"]/STRONG[normalize-space(text())=\"End session\"]")) tab0.Element ("//BUTTON[@ID=\"end\"]/STRONG[normalize-space(text())=\"End session\"]").Click ();
}
}