在SharePoint中,我试图能够通过标题元素单击组中的任意位置,并让组展开/折叠。我已经让它部分工作了。现在我可以点击元素中的任何位置,但打开它的<a>
标记除外。如何在单击任何位置时设置条件以运行该函数,<a>
标签除外?
这就是我所拥有的:
$(document).ready(function() {
var groupby = $(".ms-gb");
groupby.click(function(){
var groupbyAnchor = $("a", this);
groupbyAnchor = groupbyAnchor[0];
expandThisGroup(groupbyAnchor)});
});
function expandThisGroup(anchor) {
anchor.click();
}
答案 0 :(得分:1)
在阻止事件传播的子元素上放置另一个处理程序:
groupby.find("a").click(function(e) {
e.stopPropagation();
});
答案 1 :(得分:1)
你可能会这样做。将click
事件目标传递给函数,如果目标不是给定的anchor
,则执行某些操作,否则不执行任何操作。
$(document).ready(function(){
var groupby = $(".ms-gb");
groupby.on('click', function(e){
var $target = e.target,
$anchor = $('a', this);
if(!($target == $anchor)){
// do function
}else{
return false;
}
});
});