Javascript jquery事件授权赢得';行不通
所以我有这个代码Javascript jquery事件授权赢得';行不通,javascript,jquery,html,css,Javascript,Jquery,Html,Css,所以我有这个代码 $(“#inputs input.time”).mask(“00:00:00”); $(“#inputs input.time”).prop('value','00:00:00'); Number.prototype.padDigit=函数(){ 返回值(this
$(“#inputs input.time”).mask(“00:00:00”);
$(“#inputs input.time”).prop('value','00:00:00');
Number.prototype.padDigit=函数(){
返回值(this<10)“'0'+this:this;
}
$(“#显示”)。单击(函数(){
$('#show').show();
});
$('#inputs').on('focus','input.time',function(){
$(this.select();
});
$('#append')。单击(函数(){
$(“#inputs”)。在(“
”)之后;
});
$('#inputs').on('keyup','input.time',函数(事件){
console.log(事件);
变量t1='00:00:00';
var-mins=0;
var-hrs=0;
var-sec=0;
$('#inputs input.time')。每个(函数(){
t1=t1.分裂(':');
var t2=$(this.val().split(':');
//控制台日志(编号(t1[1])+编号(t2[1]))
sec=编号(t1[2])+编号(t2[2]);
secmns=数学层(parseInt(sec/60));
分钟=数字(t1[1])+数字(t2[1])+秒;
minhrs=数学楼层(parseInt(分钟/60));
小时数=数量(t1[0])+数量(t2[0])+分钟小时数;
秒=秒%60;
分钟=分钟%60;
t1=hrs.padDigit()+':'+分钟.padDigit()+':'+秒padDigit()
console.log(t1)
});
如果(t1='NaN:NaN:NaN'){
t1='00:00:00';
}
$('总计')。文本(t1);
/*****************减去时间*****************/
//新日期(年、月、日、小时、分钟、秒、毫秒)
//问题,如果总的秒、分或小时数大于剩余的秒、分或小时数。意外结果
var start=$('#rem').text();
var end=$('#total').text();
s=start.split(“:”);
e=结束。拆分(“:”);
var se=数字(s[2])-数字(e[2]);
var sems=数学地板(parseInt(第60节));
var mi=数量(s[1])-数量(e[1])-SEM;
var mihr=数学楼层(帕塞因特(分钟/60));
var hr=数量(s[0])-数量(e[0])-百万分之一;
if(se<0){
mi=mi-1;
se=se+60;
}
if(mi<0){
hr=hr-1;
mi=mi+60;
}
var result=hr.padDigit()+':'+mi.padDigit()+':'+se.padDigit();
如果(结果=='NaN:NaN:'+se){
结果='00:00:00';
}
$('保留')。文本(结果);
});代码>
#保留,
#总数{
背景色:#333;
宽度:60px;
高度:20px;
颜色:#fff;
填充:0 10px;
}
#展示{
显示:无;
}
展示
剩下的:
01:20:30总计:
00:00:00
01:20:30
+
希望这就是你想要的!!您需要在#inputs
div中使用insertAfter
并在最后一次input
之后插入它
$('#append').click(function () {
$("<input type='text' value='00:00:00' class='time' name='time2' />").insertAfter("#inputs input:last");
});
$('#append')。单击(函数(){
$(“”)之后插入(#inputs输入:last);
});
这是正在工作的
编辑-2
更改如下,它将工作:
$('#append').click(function () {
$("#inputs").after("<input type='text' value='00:00:00' class='time' name='time2' /><br/>");
});
$(document).on('keyup', 'input.time', function (event) {
console.log(event);
var t1 = '00:00:00';
var mins = 0;
var hrs = 0;
var sec = 0;
$('input.time').each(function () {
t1 = t1.split(':');
var t2 = $(this).val().split(':');
//console.log(Number(t1[1]) + Number(t2[1]))
sec = Number(t1[2]) + Number(t2[2]);
secmns = Math.floor(parseInt(sec / 60));
mins = Number(t1[1]) + Number(t2[1]) + secmns;
minhrs = Math.floor(parseInt(mins / 60));
hrs = Number(t1[0]) + Number(t2[0]) + minhrs;
sec = sec % 60;
mins = mins % 60;
t1 = hrs.padDigit() + ':' + mins.padDigit() + ':' + sec.padDigit()
console.log(t1)
});
if (t1 == 'NaN:NaN:NaN') {
t1 = '00:00:00';
}
$('#total').text(t1);
/*****************subtract time*****************/
//new Date(year, month, day, hours, minutes, seconds, milliseconds)
//problem, if the seconds, mins or hrs of total is bigger than the remaining. Unexpected result
var start = $('#rem').text();
var end = $('#total').text();
s = start.split(':');
e = end.split(':');
var se = Number(s[2]) - Number(e[2]);
var sems = Math.floor(parseInt(sec / 60));
var mi = Number(s[1]) - Number(e[1]) - sems;
var mihr = Math.floor(parseInt(mins / 60));
var hr = Number(s[0]) - Number(e[0]) - mihr;
if (se < 0) {
mi = mi - 1;
se = se + 60;
}
if (mi < 0) {
hr = hr - 1;
mi = mi + 60;
}
var result = hr.padDigit() + ':' + mi.padDigit() + ':' + se.padDigit();
if (result == 'NaN:NaN:' + se) {
result = '00:00:00';
}
$('#remain').text(result);
});
$('#append')。单击(函数(){
$(“#输入”)。在(
)之后;
});
$(文档).on('keyup','input.time',函数(事件){
console.log(事件);
变量t1='00:00:00';
var-mins=0;
var-hrs=0;
var-sec=0;
$('input.time')。每个(函数(){
t1=t1.分裂(':');
var t2=$(this.val().split(':');
//控制台日志(编号(t1[1])+编号(t2[1]))
sec=编号(t1[2])+编号(t2[2]);
secmns=数学层(parseInt(sec/60));
分钟=数字(t1[1])+数字(t2[1])+秒;
minhrs=数学楼层(parseInt(分钟/60));
小时数=数量(t1[0])+数量(t2[0])+分钟小时数;
秒=秒%60;
分钟=分钟%60;
t1=hrs.padDigit()+':'+分钟.padDigit()+':'+秒padDigit()
console.log(t1)
});
如果(t1='NaN:NaN:NaN'){
t1='00:00:00';
}
$('总计')。文本(t1);
/*****************减去时间*****************/
//新日期(年、月、日、小时、分钟、秒、毫秒)
//问题,如果总的秒、分或小时数大于剩余的秒、分或小时数。意外结果
var start=$('#rem').text();
var end=$('#total').text();
s=start.split(“:”);
e=结束。拆分(“:”);
var se=数字(s[2])-数字(e[2]);
var sems=数学地板(parseInt(第60节));
var mi=数量(s[1])-数量(e[1])-SEM;
var mihr=数学楼层(帕塞因特(分钟/60));
var hr=数量(s[0])-数量(e[0])-百万分之一;
if(se<0){
mi=mi-1;
se=se+60;
}
if(mi<0){
hr=hr-1;
mi=mi+60;
}
var result=hr.padDigit()+':'+mi.padDigit()+':'+se.padDigit();
如果(结果=='NaN:NaN:'+se){
结果='00:00:00';
}
$('保留')。文本(结果);
});
基本上,您要做的是插入输入
在#输入
div之后,您已经编写了接受键控的代码
在#inputs
div.中出现的,因为您给出的是相同的
所有输入的类名称,如果引用
只有他们才足够。不需要通过父母联系他们
部门
你的小提琴有控制台错误<代码>掩码
不是它所说的函数!!!.mask只是在输入上放置一个输入掩码,以将输入过滤为'00:00:00'格式,无论代码是否存在,代码都会运行。但即使在您的小提琴中,它也不会在单击显示时显示任何内容!!!这很奇怪,它在我的电脑上运行得很好。你试过我的链接吗?