jquery:如何检查元素是否具有某些CSS类/样式
我有一个div:
<div class="test" id="someElement" style="position: absolute"></div>
有没有什么办法来检查某些元素:
$("#someElement")
有一个特定的类(在我的情况下,“testing”)。
或者,有没有办法来检查,元素有一定的风格? 在这个例子中,我想知道元素是否有“position:absolute”。
非常感谢你!
if($('#someElement').hasClass('test')) { ... do something ... } else { ... do something else ... }
CSS样式是键值对,而不仅仅是“标签”。 默认情况下,每个元素都有一组CSS样式分配给它,其中大部分隐式地使用了浏览器的默认值,其中一些在CSS样式表中被明确地重新定义。
为了获得分配给某个元素的特定CSS条目的值并进行比较:
if ($('#yourElement').css('position') == 'absolute') { // true }
如果您没有重新定义样式,那么您将获得该特定元素的浏览器默认值。
if ($("element class or id name").css("property") == "value") { your code.... }
我find了一个解决scheme:
$("#someElement")[0].className.match("test")
但不知何故,我相信有更好的办法!
或者,如果您需要访问具有该属性的元素,并且不使用ID,则可以使用以下path:
$("img").each(function () { if ($(this).css("float") == "left") { $(this).addClass("left"); } if ($(this).css("float") == "right") { $(this).addClass("right"); } })