2012-12-19 28 views
20

thể trùng lặp:
How can you determine if a css class exists with Javascript?Lấy danh sách các lớp CSS trong StyleSheet sử dụng javascript/jQuery

Có cách nào để kiểm tra xem có một lớp có tên là 'một số-class-name 'trong css?

Ví dụ, tôi có:

<style type="text/css"> 
    .box { 
     position: absolute; 
     left: 150%; 
    } 
</style> 

Ý định của tôi là gán ngẫu nhiên một lớp học để một div về sự kiện nhất định:

var classList = []; //Need to populate this array 
$('#updateClass').on('click', function() { 
    $('#resultDiv').attr('class',classList[Math.floor((Math.random()*classList.length)+1)]); 
}); 

Có thể kiểm tra bằng cách JS/jQuery liệu một lớp có tên 'ô' tồn tại trong biểu định kiểu?

tôi gọi This Question - How can you determine if a css class exists with Javascript?, Nhưng câu trả lời không giúp tôi vì liên kết trong câu trả lời không tồn tại nữa.

Cảm ơn.

+10

kiểm tra câu trả lời này: http://stackoverflow.com/questions/983586/how-can-you-determine-if-a-css-class-exists-with-javascript – silly

+2

'if ($ ('. Validation- lỗi '). chiều dài) {/ * mã của bạn ở đây * /} 'nhưng tôi nghi ngờ nó sẽ kiểm tra phần tử có lớp ?? –

+0

Có lý do nào để bạn kiểm tra tên lớp trong css không? – Spoike

Trả lời

1

Như đã đề cập ở trên (How can you determine if a css class exists with Javascript?), bạn có thể quét CSS hoàn chỉnh cho lớp được yêu cầu hoặc bạn có thể thêm lớp được yêu cầu vào phần tử và kiểm tra xem các attriubtes của lớp có áp dụng cho nó hay không. Ví dụ:

document.getElementById('yourTestElementID').className=newClass; 
if(document.getElementById('yourTestElementID').style.position === 'thevalue') { 
    // class exists.... 
} 
-1

thuật toán ngẫu nhiên của bạn:

Math.floor((Math.random()*classList.length)+1) 

sẽ tạo ra số ngẫu nhiên từ phạm vi cụ thể hoặc tổng quát hơn từ 1 đến classList.length.

Bạn chỉ cần đảm bảo rằng tên lớp mà bạn sẽ sử dụng và sẽ được điền vào trong mảng sẽ tồn tại.

Các vấn đề liên quan