$(document).on('mousedown', function(e) {
if ($(e.target).closest('.SiteNav>li>a').length) {
if ($(e.target).is("[data-trigger='active']")) {
alert('true');
}
}
});
我正在使用if ($(e.target).closest('.SiteNav>li>a').length) {
,以便用户可以点击<a></a>
或<a></a>
内的任何内容,例如<i></i>
。
回复按钮会将用户带到回复部分/页面,而另一个按钮会显示其他选项,例如“回复”,“全部回复”等。和&#39;转发&#39;但是,在显示此菜单时,我想在下拉菜单中将此data-trigger="active"
设置为“停用”。并拥有“活跃的”#39;放在<li></li>
上。
我遇到的问题是找到data-trigger="active"
的位置。
下面的脚本可能没有多大意义,这是我从我的大型脚本中获取JSFiddle代码段的地方;
if ($(e.target).closest('.SiteNav>li>a').length) {
if ($(e.target).closest('.SiteNav>li>a').length.is("[data-trigger='active']")) {
alert('true');
}
var id = $(e.target).closest('li').data('id');
$(".SiteNav>li>a:not([data-link='" + id + "'])").removeClass('hover sideHover active');
$(".SiteNav>li>ul:not([data-drop='" + id + "'])").hide();
if (!$(e.target).closest('li').find('ul').is(':visible')) {
$(".SiteNav [data-link='" + id + "']").addClass('active');
$(".SiteNav [data-drop='" + id + "']").show();
} else {
$(".SiteNav [data-link='" + id + "']").removeClass('active');
$(".SiteNav [data-drop='" + id + "']").hide();
}
}