Javascript el.nextSibling.contains(e.target)的IE8和IE9兼容语句

Javascript el.nextSibling.contains(e.target)的IE8和IE9兼容语句,javascript,jquery,internet-explorer-8,internet-explorer-9,Javascript,Jquery,Internet Explorer 8,Internet Explorer 9,我正在寻找类似于的(!el.nextSibling.contains(e.target)),不确定有什么jQuery替代方案可以工作并支持IE8和IE9 我尝试了$包含($(el).next(),e.target)和变体,但我遇到了麻烦。有什么建议吗 编辑-本例中的事件是单击: document.addEventListener('click', function(e) { [].forEach.call(myMenu.open, function(el) { el.addEvent

我正在寻找类似于
的(!el.nextSibling.contains(e.target))
,不确定有什么jQuery替代方案可以工作并支持IE8和IE9

我尝试了
$包含($(el).next(),e.target)
和变体,但我遇到了麻烦。有什么建议吗

编辑-本例中的事件是单击:

document.addEventListener('click', function(e) {
  [].forEach.call(myMenu.open, function(el) {
    el.addEventListener('click', function(e) {
        myMenu.activate(e);
    }, false);
  });
}

第二次更新: 我现在的做法有所不同——我能够引用parentNode并实现我想要的效果,这在IE8和IE9中得到了支持。例如:

if (!el.parentNode.contains(e.target) && el != e.target) {
谢谢你的帮助

if (!el.parentNode.contains(e.target) && el != e.target) {

适用于我的情况,并得到IE8和IE9的支持。那么如何获取事件对象?包装此语句的代码是什么?是否有错误消息?事件对象被传递到函数中。让您了解一下,这段代码在IE10+、Chrome、Safari、Firefox等中都可以使用,但在IE9和IE8中却不能使用,因为它们在JS:if(!el.nextElementSibling.contains(e.target)&&el!=e.target)中存在局限性。{这篇文章对您的情况有帮助吗:?
if (!el.parentNode.contains(e.target) && el != e.target) {