我尝试使用jQuery附加一个新的text with floating label
,但我的附加文本字段没有动画。
如何制作动画?
这是我的jQuery代码:
$('body').on('keypress', '.stepcity', function(e){
let keyCode = e.keyCode || e.which;
if (keyCode == 9 || keyCode == 13)
{
e.preventDefault();
let id = $('stepcity').length + 1;
$('#StepCities').append('<div class="mdl-grid mdl-cell--7-col"><div class="mdl-cell--2-col CreateGroupIcons"><i class="fa fa-dot-circle-o"></i></div><div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label mdl-cell--10-col"><input class="mdl-textfield__input hightlyVisible stepcity" type="text" id="StepCity'+id+'"><label class="mdl-textfield__label" for="StepCity'+id+'">Step City</label></div></div>');
}
});
谢谢!
答案 0 :(得分:1)
如果您对DOM进行了更改,则材质处理程序(如您错过的动画)将不适用于这些更改。
添加html后,您必须在javascript中调用componentHandler.upgradeDom();
。然后它应该表现得像预期的那样。
这似乎也错了:let id = $('stepcity').length + 1;
它可能应该是一个类或一个id-selector。