Node: меÑод compareDocumentPosition()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since иÑÐ»Ñ 2015 г..
ÐеÑод compareDocumentPosition() инÑеÑÑейÑа Node ÑообÑÐ°ÐµÑ Ð¿Ð¾Ð·Ð¸ÑÐ¸Ñ Ð¿ÐµÑеданного ÐµÐ¼Ñ Ð² каÑеÑÑве аÑгÑменÑа Ñзла оÑноÑиÑелÑно Ñзла, на коÑоÑом он бÑл вÑзван.
СинÑакÑиÑ
compareDocumentPosition(otherNode)
ÐаÑамеÑÑÑ
ÐозвÑаÑаемое знаÑение
ЧиÑловое знаÑение, пÑедÑÑавлÑÑÑее позиÑÐ¸Ñ otherNode оÑноÑиÑелÑно node в виде биÑовой маÑки, в коÑоÑой обÑÐµÐ´Ð¸Ð½ÐµÐ½Ñ ÑледÑÑÑие конÑÑанÑÑ Node:
Node.DOCUMENT_POSITION_DISCONNECTED(1)-
Ðба Ñзла Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑ Ð² ÑазнÑÑ Ð´Ð¾ÐºÑменÑÐ°Ñ Ð¸Ð»Ð¸ в ÑазнÑÑ Ð´ÐµÑевÑÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ докÑменÑа.
Node.DOCUMENT_POSITION_PRECEDING(2)-
otherNodeпÑедÑеÑÑвÑÐµÑ ÑÐ·Ð»Ñ Ð²Ð¾ вÑÐµÐ¼Ñ Ð¿ÑÑмого Ð¾Ð±Ñ Ð¾Ð´Ð° пÑи поиÑке в глÑбинÑ. Node.DOCUMENT_POSITION_FOLLOWING(4)-
otherNodeÑледÑÐµÑ Ð¿Ð¾Ñле Ñзла во вÑÐµÐ¼Ñ Ð¿ÑÑмого Ð¾Ð±Ñ Ð¾Ð´Ð° пÑи поиÑке в глÑбинÑ. Node.DOCUMENT_POSITION_CONTAINS(8)-
otherNodeÑвлÑеÑÑÑ Ð¿Ñедком Ñзла. Node.DOCUMENT_POSITION_CONTAINED_BY(16)-
otherNodeÑвлÑеÑÑÑ Ð¿Ð¾Ñомком Ñзла. Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC(32)-
РезÑлÑÑÐ°Ñ Ð·Ð°Ð²Ð¸ÑÐ¸Ñ Ð¾Ñ Ð¿ÑоизволÑного и/или ÑпеÑиÑиÑного Ð´Ð»Ñ ÑеализаÑии поведениÑ, и его пеÑеноÑимоÑÑÑ Ð½Ðµ гаÑанÑиÑÑеÑÑÑ.
ÐогÑÑ Ð±ÑÑÑ ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ñ Ð½Ð¾Ð»Ñ Ð¸Ð»Ð¸ более биÑов. ÐапÑимеÑ, еÑли otherNode наÑ
одиÑÑÑ Ð² докÑменÑе Ñанее и ÑодеÑÐ¶Ð¸Ñ Ñзел, на коÑоÑом бÑл вÑзван меÑод compareDocumentPosition(), Ñо бÑдÑÑ ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ñ Ð±Ð¸ÑÑ DOCUMENT_POSITION_CONTAINS и DOCUMENT_POSITION_PRECEDING, и полÑÑенное знаÑение бÑÐ´ÐµÑ Ñавно 10 (0x0A).
ÐÑимеÑ
const head = document.head;
const body = document.body;
if (head.compareDocumentPosition(body) & Node.DOCUMENT_POSITION_FOLLOWING) {
console.log("ÐÑавилÑно ÑоÑÑавленнÑй докÑменÑ");
} else {
console.error("<head> не найден пеÑед <body>");
}
ÐÑимеÑание:
ÐоÑколÑÐºÑ ÑезÑлÑÑаÑ, возвÑаÑаемÑй compareDocumentPosition(), ÑвлÑеÑÑÑ Ð±Ð¸Ñовой маÑкой, побиÑовÑй опеÑаÑÐ¾Ñ Ð Ð´Ð¾Ð»Ð¶ÐµÐ½ иÑполÑзоваÑÑÑÑ Ð´Ð»Ñ Ð¾ÑмÑÑленнÑÑ
знаÑений.
СпеÑиÑикаÑии
| Specification |
|---|
| DOM > # ref-for-dom-node-comparedocumentpositionâ > |