vue.js+键盘+php,vue引入js数字小键盘步骤详解

这次给大家带来vue引入js数字小键盘步骤详解,vue引入js数字小键盘的注意事项有哪些,下面就是实战案例,一起来看一下。

效果如图:

2fa2929b6f28d18dcf7a4beb08eddc94.png

代码如下:

keyboard.vue

123

·

{{key}}

import clickoutside from '../../directives/clickoutside'

export default {

directives: { clickoutside },

data() {

return {

keyList: [],

status: 2,//0 小写 1 大写 2 数字 3 符号

lowercase: [

['7', '8', '9'],

['4', '5', '6'],

['1', '2', '3'],

['.','0','del'],

],

//equip:!!navigator.userAgent.toLocaleLowerCase().match(/ipad|mobile/i)//是否是移动设备

}

},

props: {

option: {

type: Object

}

},

computed: {

showKeyboard(){

return this.option.show

}

},

mounted() {

this.keyList = this.lowercase

},

methods: {

tabHandle({ value = '' }) {

if(value.indexOf('tab-num') > -1){

this.status = 2

//数字键盘数据

}else if(value.indexOf('key-delete') > -1){

console.log(value.indexOf('key-delete'))

this.emitValue('delete')

}else if(value.indexOf('tab-blank') > -1){

this.emitValue(' ')

}else if(value.indexOf('tab-enter') > -1){

this.emitValue('\n')

}else if(value.indexOf('tab-point') > -1){

this.emitValue('.')

}else if(value.indexOf('tab-symbol') > -1){

this.status = 3

}else if(value.indexOf('tab-top') > -1){

if(this.status === 0){

this.status = 1

}else{

this.status = 0

this.keyList = this.lowercase

}

}else{

}

},

clickKey(event) {

// if(event.type === 'click' && this.equip) return

let value = event.srcElement.innerText;

let id = event.srcElement.id;

let target = event.srcElement ? event.srcElement : event.target;

if(id !== '' && id === 'del'){//如果点击的是id为del的表示是删除

this.emitValue(id);

}else{//否则

value && id !== 'del'? this.emitValue(value) : this.tabHandle(target.classList);

}

},

emitValue(key) {

console.log(key)

this.$emit('keyVal', key)

},

closeModal(e) {

if (e.target !== this.option.sourceDom) {

// this.showKeyboard = false

this.$emit('close', false)

}

}

}

}

keyboard {

display: inline-block;

width: 263px;

font-size: 18px;

border-radius: 2px;

background-color: #e5e6e8;

user-select: none;

bottom: 0;

position: absolute;/*定位数字键盘*/

left: -20px;

top: 77px;

z-index: 999;

pointer-events: auto;

p {

width: 100%;

margin: 0 auto;

height: 42px;

margin-bottom: 0.5em;

display: flex;

display: -webkit-box;

flex-direction: row;

flex-wrap: nowrap;

justify-content: center;

i {

display: block;

margin: 0 0.2%;

height: 50px;

line-height: 52px;

font-style: normal;

font-size: 24px;

border-radius: 3px;

width: 44px;

background-color: #fff;

text-align: center;

flex-grow: 1;

flex-shrink: 1;

flex-basis: 0;

-webkit-box-flex: 1;

&:active {

background-color: darken(#ccc, 10%);

}

}

.tab-top {

width: 50px;

margin: 0 1%;

background: #cccdd0;

color: #fff;

font-size: 24px;

}

.key-delete {

width: 47px;

margin: 0 0.2%;

color: #827f7f;

background: ;

}

.tab-num {

font-size: 18px;

background: #dedede;

color: #5a5959;

}

.tab-point {

width: 20px;

}

.tab-blank {

width: 50px;

font-size: 12px;

padding: 0 15px;

color: #5a5959;

line-height: 60px;

}

.tab-symbol {

width: 20px;

font-size: 18px;

}

.tab-enter {

font-size: 30px;

line-height: 54px;

}

&:nth-child(2) {

width: 100%;

}

}

}

在使用页面引入代码:

html代码

196001388abac221ac84af1001a86b77.png

引入数字小键盘vue

5aa2e5c249ab4e710dadbd229e607ef8.png

注册引入的主键

80f4c14cb68736d2890923705c760962.png

定义的method

3daffedbd0f419b591489bb8527cd7d6.png

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值