如果給定元素只有一個子元素(包括文本節點,但忽略空格),如何使用jQuery或JavaScript進行測試。檢查元素是否只有一個子元素
示例:對於標記元素「DIV」以下時,測試將失敗,因爲它有兩個子元素:p和文本節點:
<div>
<p>Test-1</p> - subline
</div>
示例:對於以下標記元素「DIV」,測試應該通過,因爲它只有一個子元素:p(儘管空格被忽略):
<div>
<p>Test-1</p>
</div>
好像element.children()將無法工作,因爲它忽略了文本節點。 element.contents()可能有效,但不會忽略空格。
任何方式重構並使其更小。 – Nick
@尼克爲什麼會這麼重要?如果您需要反覆使用它,請將其解壓縮到一個函數中。 –
@RoryMcCrossan它的工作原理,但簡潔一些將是可取的。我嘗試重構它:element.contents()。filter(':only-child')。length。如果沒有比Arun的答案更好或更短的方法,那麼我會很樂意接受它。 – Nick