2011-07-11 25 views
13

Câu hỏi về tự động hóa. Tôi sử dụng Selenium RC.Những gì cần sử dụng thay vì CONTAINS() trong CSS3

tôi nâng cấp FF của tôi để 3.6.18 và có vẻ như nó không thể tìm thấy bất kỳ định vị mà có "chứa()" bên

Tôi đã đọc rất nhiều các diễn đàn. Đó là một vấn đề đã biết, nhưng tôi không tìm thấy giải pháp nào.

Vì vậy, những gì để sử dụng thay vì chứa() ngay bây giờ?

+1

': chứa()' không bao giờ làm cho nó vào spec, xem http://stackoverflow.com/questions/4781141/why-h3nth-child1containsa -selector-doesnt-work/4781167 # 4781167 – BoltClock

+0

Bạn có thể chọn XPath, có hàm 'contains()'. – BoltClock

+0

@BoltClock: trong khi đúng là ': contains()' không bao giờ được đưa vào thông số CSS3, theo tài liệu [Selenium docs] mới nhất đã xuất bản (http://release.seleniumhq.org/selenium-core/1.0.1 /reference.html), "Hiện tại bộ định vị bộ chọn css hỗ trợ ** tất cả các bộ chọn css1, css2 và css3 ngoại trừ ** [ngoại lệ không liên quan; bỏ qua vì lý do không gian tại đây]". Vì vậy, _in Selenium_ nó có nghĩa vụ phải làm việc. –

Trả lời

11

Chức năng chỉ trong CSS mà là tương tự như chứa() là:

element[attribute*="substring"] 

Nó rất hữu ích khi bạn cần phải kiểm tra một số chuỗi chứa trong thuộc tính.

1

Bạn có thể sử dụng jQuery: chứa (văn bản)

<script src="https://code.jquery.com/jquery-1.10.2.js"></script> 

<script> 
    $("div:contains('foo')").css("text-decoration", "underline"); 
</script> 
Các vấn đề liên quan