vue 树形菜单 右击自定义菜单 问题
作者:互联网
问题1:自定义菜单定位问题
解决方法:
rightBtn(item, index) {
let menu = document.getElementById("msgRightMenu");
var e = e || window.event;
var marginWidths = 400;
var marginHeight = 110;
//鼠标点的坐标
var oX = e.clientX - marginWidths;
var oY = e.clientY - marginHeight;
if (oX > 423) {
oX = 423;
}
//菜单出现后的位置
menu.style.display = "block";
menu.style.left = oX + 130 + "px";
menu.style.top = oY - 50 + "px";
document.onclick = function() {
document.getElementById("msgRightMenu").style.display = "none";
};
//阻止浏览器默认事件
return false; //一般点击右键会出现浏览器默认的右键菜单,写了这句代码就可以阻止该默认事件
}
定义位置 从新放置 自定义菜单的位置
问题二:大问题
点击到二级或者三级菜单时 如何将点击的菜单属性 传给父组件
一级菜单那传递时用 this.$emit("自定义方法",参数)
二级菜单传递时用 this.$parent.$emit("自定义方法",参数)
三级菜单 传递时用 this.$parent.$parent.$emit('自定义方法',参数)
。。。。。
好笨好笨
解决方法:
var parent=this;
for(var i=1;i<item.id.length;i++){
var that;
that=parent.$parent;
that.$emit('getSubMenu',menuname);
parent=parent.$parent;
}
this.$emit('getSubMenu',menuname);
好啦 就这些啦 撒花
标签:右击,style,菜单,自定义,parent,oX,var 来源: https://blog.csdn.net/weixin_41472431/article/details/89790949