webapp是基于html5网页版的app,经常会结合app成为混合模式 hybrid app,也就是 app小应用打开 访问的其实是网页,这种方式非常不错,解决了app更新的难题, 所以这个时候要求 webapp需要做的非常像原生app一样。
下面是切图网(qietu.com)在实际项目中碰到一个问题,关于 input 只能输入数字和小数点后俩位的验证。下面javascript 代码
//
// JavaScript Document
$.fn.decimalinput = function(num) {
$(this).
//获取当前光标在文本框的位置
function getCurPosition(domObj) {
var position = 0;
if (domObj.selectionStart || domObj.selectionStart == ‘0’) {
position = domObj.selectionStart;
}
else if (document.selection) { //for IE
domObj.focus();
var currentRange = document.selection.createRange();
var workRange = currentRange.duplicate();
domObj.select();
var allRange = document.selection.createRange();
while (workRange.compareEndPoints("StartToStart", allRange) > 0) {
workRange.moveStart("character", -1);
position++;
}
currentRange.select();
}
return position;
}
//获取当前文本框选中的文本
function getSelectedText(domObj) {
if (domObj.selectionStart || domObj.selectionStart == ‘0’) {
return domObj.value.substring(domObj.selectionStart, domObj.selectionEnd);
}
else if (document.selection) { //for IE
domObj.focus();
var sel = document.selection.createRange();
return sel.text;
}
else return ”;
}
//$(‘#fe3’).decimalinput(2);
})
关于html5原生配合
一个是 type=number (原生h5自带)
控制手机端默认弹出 数字输入键盘
一个是 step=0.01 (原生 h5 自带)
控制输入框的数字跨度,0.01 代表可以输入 数字和小数点后俩位
切图社区(qietu.cn)原创。