其余浏览器运行正常
每当我输入数字时,我都会在除Safari之外的所有移动和计算机浏览器中获取keyup事件,问题是Safari中不会触发keyup / keydown事件。
我尝试了所有可能的绑定和触发事件。我希望根据用户输入来更改值,而不是通过+或-按钮
来增加计数
var gotlist = [];
$('.count-val').trigger('keyup', function(e) {
debugger;
//console.log(" keyup triggered");
if (e.keyCode === 13) $(this).trigger('input');
}).on('input', function(e) {
var countid = $(this).attr("id");
//console.log(e.keyCode + " keyup triggered");
var val = Number($(this).val());
if (val <= 0 || isNaN(val)) {
for (var i = 0; i < gotlist.length; i++) {
if (gotlist[i].id == countid) {
gotlist.splice(i, 1);
$("#disp_" + countid).remove();
}
}
$(this).val("");
} else {
for (var i = 0; i < gotlist.length; i++) {
if (gotlist[i].id == countid) {
gotlist[i].count = val;
}
}
}
maindisp();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
<li class="list-item">
<div class="dispcount">
<i class="fa fa-minus-circle" onclick="reducecount({'id':'item_2','area':'8','count':'1'});></i>
<span><input type=" number " class="count-val " inputmode="numeric " pattern="[0-9]* " title="Non-negative integral number " id="item_4 " value=" "></span>
<i class="fa fa-plus-circle addcount " aria-hidden="true " onclick="addvalues({'id':'item_2','area':'8','count':'0'}); "></i>
</div>
Bed
</li>
答案 0 :(得分:0)
$("#search").on('input propertychange',function(){
//do something
}
我猜你对IOS有问题,原始IOS不支持“ keyup”事件。 您可以绑定js事件“ input”和“ propertychange”以进行监听。
答案 1 :(得分:0)
按键盘上的manuallt,它将起作用!