我想在点击小按钮后才为我的元素创建和显示菜单。
我有一个小按钮,运行功能“doAction”
<i class="fa fa-ellipsis-h" ng-click="doAction(\'OpenMenu\', $event)"></i>
在我的函数'doAction'中,我希望从事件鼠标点击获取位置X Y并在此处显示我的菜单。 几乎一切都有效...我有'下拉菜单'的问题。 更确切地说,我看到上面描述的按钮和此代码中的按钮(id = test):
var menu = angular.element('<div class="dropdown">' +
'<button id="test" class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown"><span class="caret"></span></button>'+
'<ul class="dropdown-menu">'+
'<li><a href="#">HTML</a></li>'+
'<li><a href="#">CSS</a></li>'+
'<li><a href="#">JavaScript</a></li>'+
'</ul>'+
'</div>');
menu.css({
position: 'absolute',
left: event.clientX,
top: event.clientY,
zIndex: '999'
});
var body = angular.element(document).find('body').eq(0);
body.append(menu);
现在,我必须点击第一个按钮'fa-ellipsis-h'稍后按钮“test”,然后才能看到我的菜单。 我不知道如何从变量“menu”中删除按钮'id = test',并在按下第一个按钮'fa fa-ellipsis-h'后立即打开菜单。
答案 0 :(得分:0)
首先,您确定需要在函数中转义那些单引号吗?我将你的HTML复制并粘贴到jsbin中,因此就立即失败了。
如果我理解您的要求,您希望在第一次点击后打开菜单,而不是在点击<i>
元素后再点击测试按钮。
我在这个垃圾箱里为我工作:working example
<i class="fa fa-ellipsis-h" data-ng-click="doAction('OpenMenu', $event)">Menu</i>
单击立即打开菜单(我在这些元素的某些文本中添加了,因为我没有包含fontawesome库。)