我正在尝试创建某种类型的计时器,我希望它能够在特定的秒数内触发,并在结束时执行特定的任务:
这是我到目前为止所得到的,
<span onclick='setTimeout(start_timer_j.call(this,event)'></span> "单击文本时,将调用函数jquery函数
这是jquery函数:
function start_timer_j(event){
    var el = $(this);
    var count = 1000;
    var counter= setInterval(timer, 100);
    function timer(this){
        $(this).text('k');
        count -=1;
    }
    el.text('k');
}我的问题是,传递这个变量似乎并不能让函数知道变量,我也尝试了传递var el和$( this )。还有一个问题,你有什么办法让我也可以暂停和重播计时器吗?
谢谢
发布于 2015-11-07 18:20:12
我觉得你在寻找类似这样的东西:
<span onclick='setTimeout(start_timer_j(this, event), 0);'></span>
function start_timer_j(obj, event) {
       var el = $(obj);
       var count = 1000;
       var counter = setInterval(timer, 100);
        function timer(e) {
            el.text('k');
            count -=1;
        }
        el.text('k');
} clearInterval(计数器);和setInterval(定时器,100);可用于暂停和重放定时器。
发布于 2015-11-07 18:35:14
除了前面的答案,这是做同样事情的另一种方式。
<span onclick='setTimeout(start_timer_j(event),0)'></span>
function start_timer_j( event) {
       var el = $(event.currentTarget); //This will give you the originating element. Then wrap it in jQuery.
       var count = 1000;
       var counter = setInterval(timer, 100);
        function timer(e) {
            el.text('k');
            count -=1;
        }
        el.text('k');
} https://stackoverflow.com/questions/33581323
复制相似问题