在谷歌浏览器下vue的@input事件问题

在谷歌浏览器下vue的@input事件问题:input输入中文,在输入拼音的时候就在触发(360不这样)

原文链接:https://blog.csdn.net/m0_37817986/article/details/103079249

<input v-on:input="searchOne($event,item.ind)" v-on:compositionstart="flagg=false" v-on:compositionend="flagg=true" autocomplete="off"/>
var app = new Vue({    el: ‘#app‘,    data: {        flagg:false    },
  methods: {    searchOne:function(event,ind){        //console.log(this.flagg);        var _this = this;        // setTimeout(function(){        if(this.flagg){            _this.kemuSearch(ind);        }        //因为选词结束的时候input会比compositionend先一步触发,此时flag还未调整为true,所以不能触发到console,故用setTimeout将其优先级滞后。        // },0)

        //这个事件是input在360和谷歌两个效果不一样,用change只能在失去焦点的时候触发    },
kemuSearch: function (num) {    var self = this;    this.flag = 0;    var _IsLastLevel = 1;    //这里是表单每次变化的值,可能只能为空时才能去请求    //这里应该是键盘实时搜索,鼠标也用到这个方法    var _SearchKey = $("#text" + num).val();    $.ajax({        type: ‘POST‘,        url: "/IncreaseCredit/Subject_GetList",        data: {            IsLastLevel: _IsLastLevel,            SearchKey: _SearchKey        },        dataType: "json",        async:false,//这里要改成同步的,否则没有查询完就去干别的了        success: function (msg) {            if (msg.status.code == "1") {                app.list = [];                //list提供一个临时容器,存请求回来的列表值                for (var i = 0; i < msg.row_data.record.length; i++) {                    app.list.push(msg.row_data.record[i]);                }                if(self.list.length>0){                    self.flag = 1;//当有值的时候改为1,让下拉框显示                }else{                    //实时查询,当没有值的时候不要显示空框                    $(‘.out‘).css({ ‘display‘: ‘none‘})                }                // for (var i in msg.row_data.record) {                //     app.list.push(msg.row_data.record[i]);                // }                //console.log(app.list)            }        },    });

},
}

原文地址:https://www.cnblogs.com/liufeiran/p/12703647.html

时间: 2024-08-02 00:43:15

在谷歌浏览器下vue的@input事件问题的相关文章

如何去除input框在谷歌浏览器下的黄色底纹

现象:谷歌浏览器下input框有默认记住功能,此时若选择了历史输入的内容,则变成如下图:非历史输入,是没有的. 方法一 input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px white inset;}此法仅适用纯色背景: 方法二 input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofil

input事件在ie9以下不兼容问题完美解决

上周四好不容易加了几天班把刚接手的一个pc页面做完,周五同事说要兼容ie7~ie9,结果在上面一跑,输入都没法输入. 我的需求是用6个span作为虚拟的密码输入框,实际上是用一个藏在页面里的input来实现输入的.如下图 上面是我要实现的页面,和页面结构dom,就是点击span的的父节点div的时候,要让input获取焦点.左边是input,为了给大家展示就先不藏起来了,对了,千万别用display:none来隐藏input,否则无法获取焦点. 先来给大家复习一下input标签的所有事件: 1.

Vue_(基础)Vue中的事件

Vue.js中文文档 传送门 Vue@事件绑定 v-show:通过切换元素的display CSS属性实现显示隐藏: v-if:根据表达式的真假实现显示隐藏,如果隐藏,它绑定的元素都会销毁,显示的时候再重建: v-else:与v-if配对使用: v-elseif:与v-if配对使用: v-bind:属性绑定: v-cloak:可以隐藏未编译的 Mustache 标签直到实例准备完毕,也就是隐藏{{}}: Learn 一.event事件 二.v-show和v-if指令 三.键盘事件 四.v-bin

input事件中文触发多次问题研究

我们在网页中经常会遇到实时搜索的情况,或者其他类似需要input实时响应的问题,一般情况下,我们是利用input和propertychange事件来监听input内容的变化来响应,但是有一个问题就是当输入汉字的时候,可能我们要输入 '实时' 的时候,我们的input框中会出现 'shishi'直到我们的空格才会变成 '实时',这也就意味着我们依次响应了 's','sh','shi','shis','shish','shishi','实时',前面的结果明显不是我们需要的 ,造成了我们很多次无用的提

Android4.0 input事件输入流程详解(中间层到应用层)

在Android系统中,类似于键盘按键.触摸屏等事件是由WindowManagerService服务来管理的,然后再以消息的形式来分发给应用程序进行处理.系统启动时,窗口管理服务也会启动,该服务启动过程中,会通过系统输入管理器InputManager来负责监控键盘消息.当某一个Activity激活时,会在该Service下注册一个接收消息的通道,表明可以处理具体的消息,然后当有消息时,InputManager就会分发给当前处于激活状态下的Activity进行处理. InputManager的启动

vue教程1-04 事件 v-on:click=&quot;函数&quot;

vue教程1-04 事件 v-on:click="函数"   v-on:click/mouseout/mouseover/dblclick/mousedown..... 实例:为data添加数据 实例,点击按钮,div显示/隐藏切换 实例,vue实现简易留言本 事件: v-on:click="函数" v-on:click/mouseout/mouseover/dblclick/mousedown..... new Vue({ el:'#box', data:{ //

如何解决谷歌浏览器下jquery无法获取图片的尺寸

代码如下: $(document).ready(function(){ var img_h=$img.height(); var img_w=$img.width(); }) 以上代码在IE和火狐中没有问题,但是在谷歌中可能会出现问题,之所以没货的尺寸就是因为图片没有加载完成. 修改方法如下: $(document).ready(function(){ $img.load(function(){ var img_h=$img.height(); var img_w=$img.width(); }

第二章 Vue快速入门--9 使用v-on指令定义Vue中的事件

1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset="utf-8"> 6 <meta name="viewport" content="width=device-width,initial-scale=1.0"> 7 <title>Document</title> 8

HTML5 input事件检测输入框变化

之前一直用change事件来监听输入框内容是否发生变化,只有当输入框失去焦点时才会触发,没想到html5还有个input事件,只要输入框内容发生变化就会立即触发,既然有这么好的东西我们干嘛放着不用呢,接下来就来给大家介绍一下: 如果我们页面上有这样一个简单到极致的输入框: 1 <input type="text"> 那么我们现在用jquery给它绑定input事件,如下: 1 $("input:text").bind("input proper