簡體   English   中英

如何隱藏基於一系列父元素的HTML元素

[英]How do you hide an HTML element based on a series of parent elements

我要完成的工作是按其數據類型在Feed中隱藏一個用戶的所有活動流帖子。 我可以通過這種結構區分使用CSS的用戶帖子

.joms-stream.joms-embedly--left.joms-js--stream > div > div > a > img[data-author="921"] {
display: none !important;

}

我如何使用jQuery或javascript中的一系列(this.parent)隱藏整個流項目? 先感謝您。

您的問題可以通過使用.parents(selector).last()代碼解決:

例如:

$("img[data-author="921"]").parents(".joms-stream.joms-embedly--left.joms-js--stream")
    .last().hide();

這段代碼之所以有效,是因為jQuery從.parent(selector)從最.parent(selector)到最外端返回一個父.parent(selector)列表,因此使用.last()將選擇最.last()父級。

或者,如果您確定.joms-stream.joms-embedly--left.joms-js--stream在嵌套中不會出現兩次(您應該非常確定,因為您正在使用> s進行選擇),則可以使用.closest(selector)方法,該方法將從元素中選擇最接近的匹配項:

$("img[data-author="921"]").closest(".joms-stream.joms-embedly--left.joms-js--stream")
    .hide();

PS $(jqueryElem).hide()等同於$(jQueryElem).style("display", "none")elem.style.display = "none"因為您似乎對jQuery相當elem.style.display = "none"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM