皆さん、jsdomでElement.closest()
をサポートする計画があるかどうか疑問に思っていましたか?
存在しないElement.closestをサポートする予定はありません。 Element.prototype.closestですが、将来的にはサポートを試みる可能性があります。 プルリクエストは、その前進に取り組むための最良の方法です。
@domenic Element.prototype.closest
、上記でリンクしたものとは異なりますか? それ以外の対応するMDN記事が見つかりません。
MDNが混乱しているだけだと思います。 ただし、ブラウザ(または仕様)をチェックアウトすると、 Element.closest === undefined
であるのに対し、 Element.prototype.closest
は関数です。
ああ、大丈夫。 あなたがそれを意味しなかったと確信していますが、あなたの最初の反応は私に違いを知らないための初心者のように感じさせました、そしてそれがこのコミュニティの代表ではないことを願っています。 jsdomコードに飛び込んで、貢献するのに十分理解しているかどうかを確認します。
残念ながら、現時点ではjsdomコードベースを掘り下げて理解する時間がありませんが、必要なのは次のスニペットだけです。
window.Element.prototype.closest = function (selector) {
var el = this;
while (el) {
if (el.matches(selector)) {
return el;
}
el = el.parentElement;
}
};
おそらく、すでにプロジェクトに取り組んでいる誰かが、それを適切な場所に滑り込ませることができます。
それが閉鎖されたので、 https://github.com/tmpvar/jsdom/pull/1951があり
それはまだjsdomにはありませんよね?
これは、v11.12.0でhttps://github.com/jsdom/jsdom/pull/1951をマージすることで修正されました🎉
最も参考になるコメント
残念ながら、現時点ではjsdomコードベースを掘り下げて理解する時間がありませんが、必要なのは次のスニペットだけです。
おそらく、すでにプロジェクトに取り組んでいる誰かが、それを適切な場所に滑り込ませることができます。