根据绝对位置在Jquery中选择一个元素?

时间:2012-03-09 20:51:00

标签: jquery selenium

我使用Selenium Webdriver进行测试,并希望测试日历中新时段的创建。作为日历,我使用Jquery周历: https://github.com/themouette/jquery-week-calendar 挑战在于,日历每天只有一个DOM元素(列)而不是每个时隙(行)。 jquery插件根据点击相应时隙的绝对位置计算。 那么,我怎样才能在Selenium中模拟这个?我需要像

这样的东西
page.execute_script("$('absolute position').trigger('click')")

但Jquery函数偏移和位置仅适用于现有元素,而不是查找元素。有可能吗?

1 个答案:

答案 0 :(得分:0)

您必须选择候选元素集合 - 可能基于所有元素具有的类或DOM中的位置。 对所有元素进行循环,测试每个元素的位置 - 仅在找到目标时单击。

$('#day5 .item').each(function(){
    var $this = $(this);
    if($this.position().top < 400) {
        $this.click();
    }
});