我有下面的代碼:需要幫助/車削for循環if語句到jQuery選擇
var $elements = $("body").find("*");
for (var i = 0, len = $elements.length; i < len; i++) {
var $e = $elements.eq(i),
cssFloat = $e.css("float"),
cssDisplay = $e.css("display");
if (cssDisplay !== "none" &&
(cssFloat === "left" || cssFloat === "right")) {
$e.css("display", "inline");
}
};
出於性能方面的原因,我想換成for循環,如果用jQuery選擇語句將所有元素過濾掉只有那些需要應用display: inline;
的元素。
我在想沿着以下僞代碼的東西線:
$("body")
.find("*")
.not(selector for elements whose css display style is not "none")
.contains(selector for elements whose css float style is "left" or "right")
.css("display", "inline");
不管出於什麼原因,我的大腦失敗我。這可能嗎?
沒有任何可以查詢元素樣式屬性的jQuery選擇器。 – BoltClock
你真的想在這裏解決什麼問題?我感覺無論如何,還有更好的辦法。 – thirtydot
首先,'float:left'(或'right')強制'display:block'。 – thirtydot