我成功设法使用closest()
(http://api.jquery.com/closest/)按标记名称查找最匹配的元素。它基本上通过DOM树并返回元素(如果找到)或false:
if(jQuery(".current_element").closest("p").length){ do something... }
//if above is TRUE then .current_element is nested within at least 1 "p"
现在,我只是在 任何标记 (或者更确切地说是与元素最接近的标记 - 生效的标记)之间尝试返回TRUE {{ 1}}已应用。我该怎么做?
答案 0 :(得分:1)
应该有效:
if(jQuery(".current_element").closest("p").length && jQuery(".current_element").closest("p").css("text-align") == "center" ){
do something...
}
答案 1 :(得分:1)
如果您确定'text-align:center'确实是内联样式,那么您可以在调用nearest()时将其直接添加到选择器,例如:
jQuery(".current_element").closest("p[style*='text-align:center']") ...
这将在style属性的任何位置找到包含'text-align:center'的祖先p元素。
答案 2 :(得分:0)
最佳做法是让一个类应用text-align: center;
,而不是轻松选择它。
否则你可以进行基本的字符串搜索,但要使其工作,它必须是确切的字符串:
if ($('.current').closest('p').attr('style')=='text-align:center;')){ ... }
答案 3 :(得分:0)
jQuery('.curr').closest("[style*='text-align:center']").length ...