我尝试使用 jQuery 附加一个带有 float 标签的新文本
,但我附加的文本字段没有动画。
如何使其动画化?
这是我的 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>');
}
});
谢谢!
最佳答案
如果您对 DOM 进行更改, Material 处理程序(例如您错过的动画)将不会应用于这些更改。
附加 html 后,您必须在 javascript 中调用 componentHandler.upgradeDom();
。那么它的行为应该像预期的那样。
这似乎也是错误的:let id = $('stepcity').length + 1;
它可能应该是一个类或一个 id 选择器。
关于javascript - 如何使用 MaterialDesign Lite 正确附加 TextField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42157314/