爲什麼不能正常工作?如何檢查一個特定的CSS值是否存在
瀏覽器=的Safari
<p style="color:blue;">foo</p>
if ($("p").css(("color") === "blue")) {
alert(1);
}
謝謝
爲什麼不能正常工作?如何檢查一個特定的CSS值是否存在
瀏覽器=的Safari
<p style="color:blue;">foo</p>
if ($("p").css(("color") === "blue")) {
alert(1);
}
謝謝
這是關於語法和括號:
if ($("p").css("color") === "blue") {
alert(1);
}
我覺得應該是:if ($("p").css("color") === "blue"){ alert(1); }
最初,支架放置是錯的。你應該越來越 CSS屬性「顏色」與.css("color")
和測試與你的價值相等的價值,像這樣:
if ($('p').css('color') === 'blue') {
alert('color is blue');
}
然而,一些瀏覽器將返回rgb
值,而不是將不匹配您的「藍色「,例如Chrome和Firefox返回rgb(0, 0, 255)
爲$('p').css('color')
,因此您可能需要針對rgb(甚至是十六進制 - 」#0000ff「)值進行測試。所有的值都是邏輯上的,但在文本上並不相同。
var color = $('p').css('color')
if (color === 'blue' || color === 'rgb(0, 0, 255)' || color === '#0000ff') {
alert('color is blue');
}
把它更進一步,在如果條件或許應該考慮到顏色的情況。 'BLUE'或'#0000FF'也是有效的。
至少在Firefox和Chrome
$("p").css("color")
回報RGB(0,0,255),這樣你的病情不會是真的呢。所以也許這樣的解決方法:
if ($("p").attr("style").contains('color:blue;')) {
alert(1);
}
謝謝你,我感到非常愚蠢! – Jason 2013-02-20 09:31:57
它不適用於Firefox和Chrome – gregjer 2013-02-20 09:42:51