Possible Duplicate:
How can you determine if a css class exists with Javascript?

Is there a way to check if there is a class named 'some-class-name' in css?

For example, I have:

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

My intention is to randomly assign a class to a div on certain event:

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

Is it possible to check by JS/jQuery whether a class named 'box' exists in the stylesheet?

I referred to This Question, But the answer is not working for me.

Thanks.

share|improve this question

10  
check this answers: stackoverflow.com/questions/983586/… – silly 10 hours ago
2  
if ($('.validation-errors').length){ /*your code here */ } but i suspect it will check element has class ?? – NullPointer 10 hours ago
Is there any reason for you to check for class names in css? – Spoike 10 hours ago
6  
other question, why you want to do this? whats the reason? – silly 10 hours ago
@silly I read that as whats the "season", the winter bash is getting to me – NimChimpsky 10 hours ago
show 3 more comments
feedback

closed as exact duplicate by Jan Dvorak, NimChimpsky, Jakub Konecki, Matt, nhahtdh 7 hours ago

This question covers exactly the same content as earlier questions on this topic; its answers may be merged with another identical question. See the FAQ for guidance on how to improve it.

2 Answers

As mentioned above (How can you determine if a css class exists with Javascript?), you could scan the complete CSS for the requested class, or you could add the requested class to an element and check if the attriubtes of the class apply to it. For example:

document.getElementById('yourTestElementID').className=newClass;
if(document.getElementById('yourTestElementID').style.position === 'thevalue' ) {
  // class exists....
}
share|improve this answer
feedback

Your random algorithm:

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

will generate random number from specific range or more generally from 1 to classList.length.

You just need to be sure that the class names that you are going to use and will be populated in the array will exists.

share|improve this answer
feedback

Not the answer you're looking for? Browse other questions tagged or ask your own question.