日历创建动态丢失样式

时间:2016-01-21 22:46:31

标签: javascript jquery html css

单击日期字段输入时,我会动态创建日历。我已经设置了一个set-interval函数,它将查找此日历中存在的某些类,以便我可以将元素包装到样式中。但是,当您单击上一个月或下个月时,将生成新的HTML并且我的样式不会更新。

这是我的设置间隔函数,用于包装div中的元素:

var checkExist = setInterval(function() {
        if ($('.ui-datepicker-header').length) {
            var $set = $('#ui-datepicker-div').children();
            for(var i=0; i<$set.length; i+=2){
                $set.slice(i, i+2).wrapAll('<div class="calendar-wrap"></div>');
            }
            var $prev = $('.ui-datepicker-header').children();
            for(var i=0, h=$prev.length-1; i<h; i+=2){
                $prev.slice(i, i+2).wrapAll('<div class="prev-next-buttons"></div>');
            }
            console.log("Exists!");
            clearInterval(checkExist);
        }
    }, 100);

由于我将calendar-wrap添加到整个事物中,我设置了另一个函数,以触发click事件再次启动set-interval,以便样式更新:

    $(".calendar-wrap").on("click", function(){
        checkExist();
    })

然而,这不起作用,所以我想知道是否有更好的方法&amp;为什么这不起作用。谢谢!

0 个答案:

没有答案