目前,我正在Html,css和javascript中重新创建Office 2013功能区。 这是我的第一个方法,所以不要在CSS/html/js代码上评判我。显示带有jQuery的下拉元素
目前功能区正在使用下拉菜单,但我遇到问题。
单击相应的图标时会显示下拉列表,但如果单击文档中的任意位置,我不知道如何将其隐藏。
我可能会想出一个解决方案,但我不太确定它会是一个好方法。 有人可以看看,并给我一个很好的解决方案来完成这个?
我已经在这里创造一个小提琴:http://jsfiddle.net/Complexity/mwCCt/
下面的代码打开它:
$("#OfficeUI .ribbon .tabs > ul li[role=tab] .contents .group .icongroup .icon").children().each(function(index) {
if ($(this).hasClass("menu")) {
var element = $(this);
$('<i class="fa fa-sort-asc arrow"></i>').appendTo($(this).prev());
// Add a click event to the element that contains a menu.
$(this).parent().click(function() {
$(element).toggle();
$(element).parent().addClass("active");
});
}
});
只需单击“新建项目”按钮功能区(第二个),然后在下拉菜单将打开。
在此先感谢。
凯文
几乎工作。活动类不会被删除。应该怎么做(在文档中点击)还是有其他解决方案?如果我知道它正在工作,我将成为一个非常快乐的人:-) – Complexity
只需更改此行:'$('。menu')。hide();'对此:'$('。menu')。hide ().parent()。removeClass('active');' – Terry
这完全是我试过的,但它不起作用,说实话,我不知道为什么不呢?你能快点看看吗? – Complexity