Vue.js下拉菜单组件使用方法详解


Posted in Javascript onOctober 19, 2019

本文实例为大家分享了Vue.js下拉菜单组件的具体实现代码,供大家参考,具体内容如下

效果

Vue.js下拉菜单组件使用方法详解

#### 入口页面 index.html

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>可从外部关闭的下拉菜单</title>
 <link rel="stylesheet" type="text/css" href="style.css" >
</head>
<body>
 <div id="app" v-cloak>
 <div class="main" v-clickoutside="handleClose">
  <button @click="show = !show">点击显示下拉菜单</button>
  <div class="dropdown" v-show="show">
  <p>下拉框的内容,点击外面区域可以关闭</p>
  </div>
 </div>
 </div>
 <script src="https://unpkg.com/vue/dist/vue.js"></script>
 <script src="clickoutside.js"></script>
 <script src="index.js"></script>
</body>
</html>

根实例 index.js

var app = new Vue({
 el: '#app',
 data: {
 show: false
 },
 methods: {
 handleClose () {
  this.show = false;
 }
 }
});

下拉框组件 clickoutside.js

Vue.directive('clickoutside',{
 bind: function (el, binding, vnode) {
 function documentHandler(e) {
  if(el.contains(e.target)){
  return false;
  }
  if(binding.expression){
  binding.value(e);
  }
 }
 el.__vueClickOutside__ = documentHandler;
 document.addEventListener('click',documentHandler);
 },
 unbind: function (el, binding) {
 document.removeEventListener('click', el.__vueClickOutside__);
 delete el.__vueClickOutside__;
 }
});

样式表

[v-cloak]{
 display: none;
}
.main{
 width: 125px;
}
button{
 display: block;
 width: 100%;
 color: #fff;
 background-color: #39f;
 border: 0;
 padding: 6px;
 text-align: center;
 font-size: 12px;
 border-radius: 4px;
 cursor: pointer;
 outline: none;
 position: relative;
}
button:active{
 top:1px;
 left: 1px;
}
.dropdown{
 width:100%;
 height: 150px;
 margin: 5px 0;
 font-size: 12px;
 background-color: #fff;
 border-radius: 4px;
 box-shadow: 0 1px 6px rgba(0,0,0,.2);
}
.dropdown p{
 display: inline-block;
 padding: 6px;
}

更多教程点击《Vue.js前端组件学习教程》,欢迎大家学习阅读。

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Extjs ajax同步请求时post方式参数发送方式
Aug 05 Javascript
Google排名中的10个最著名的 JavaScript库
Apr 27 Javascript
理解Javascript_12_执行模型浅析
Oct 18 Javascript
在Javascript里访问SharePoint列表数据的实现方法
May 22 Javascript
jquery easyui滚动条部分设置介绍
Sep 12 Javascript
jquery实现兼容浏览器的图片上传本地预览功能
Oct 14 Javascript
JS获取select-option-text_value的方法
Dec 26 Javascript
js动态删除div元素基本思路及实现代码
May 08 Javascript
Spring mvc 接收json对象
Dec 10 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 jQuery
element vue Array数组和Map对象的添加与删除操作
Nov 14 Javascript
vue相同路由跳转强制刷新该路由组件操作
Aug 05 Javascript
vue实现二级导航栏效果
Oct 19 #Javascript
vue.js实现二级菜单效果
Oct 19 #Javascript
vue实现多级菜单效果
Oct 19 #Javascript
vue.js实现三级菜单效果
Oct 19 #Javascript
vue.js实现只能输入数字的输入框
Oct 19 #Javascript
Vue数字输入框组件的使用方法
Oct 19 #Javascript
微信小程序实现禁止分享代码实例
Oct 19 #Javascript
You might like
windows7下安装php的imagick和imagemagick扩展教程
2014/07/04 PHP
Symfony的安装和配置方法
2016/03/17 PHP
使用Laravel中的查询构造器实现增删改查功能
2019/09/03 PHP
php生成短网址/短链接原理和用法实例分析
2020/05/29 PHP
jQuery页面图片伴随滚动条逐渐显示的小例子
2013/03/21 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
jQuery 删除/替换DOM元素的几种方式
2014/05/20 Javascript
Jquery实现地铁线路指示灯提示牌效果的方法
2015/03/02 Javascript
BootStrap实现手机端轮播图左右滑动事件
2016/10/13 Javascript
用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果
2016/11/09 Javascript
HTML的select控件美化
2017/03/27 Javascript
一步步教会你微信小程序的登录鉴权
2018/04/09 Javascript
vue利用v-for嵌套输出多层对象,分别输出到个表的方法
2018/09/07 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
2019/04/11 Javascript
vue 根据选择的月份动态展示日期对应的星期几
2021/02/06 Vue.js
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
[32:07]完美世界DOTA2联赛PWL S3 LBZS vs Rebirth 第一场 12.16
2020/12/17 DOTA
[01:03:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第一场 1月29日
2021/03/11 DOTA
在Django框架中运行Python应用全攻略
2015/07/17 Python
浅析Python中signal包的使用
2015/11/13 Python
使用python绘制二元函数图像的实例
2019/02/12 Python
实现Python与STM32通信方式
2019/12/18 Python
Pytorch之Variable的用法
2019/12/31 Python
Python日期格式和字符串格式相互转换的方法
2020/02/18 Python
IntelliJ 中配置 Anaconda的过程图解
2020/06/01 Python
Python用requests库爬取返回为空的解决办法
2021/02/21 Python
应届生服务员求职信
2013/10/31 职场文书
应届大学生求职的自我评价
2013/11/17 职场文书
乡村文明行动实施方案
2014/03/29 职场文书
二年级评语大全
2014/04/23 职场文书
七一建党节演讲稿
2014/09/11 职场文书
2014年药店店长工作总结
2014/11/17 职场文书
会议通知
2015/04/15 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
创作书写之导游词实用技巧分享(干货)
2019/12/20 职场文书
python 解决微分方程的操作(数值解法)
2021/05/26 Python