这是一个小提琴:FIDDLE

function blanker(){
    var c = $('.whatever').html().replace("thisWillBlank", "<form><input type='text'
            id='thisWillBlank'></form>");
    $('.whatever').html(c);
}

$('#alreadyBlanked').focus();

setTimeout(function(){blanker()}, 3000);


使用JS / jquery / css,我只想为所单击的任何表单保持焦点,即使出现新表单也是如此。谢谢。

最佳答案

您正在替换元素,因此旧元素不再可用,但是只要它具有ID,您就可以将其定位为:

function blanker(){
    var active = document.activeElement.id;
    var c = $('.whatever').html().replace("thisWillBlank", "<form><input type='text' id='thisWillBlank'></form>");
    $('.whatever').html(c);
    $('#'+active).focus();
}


FIDDLE

09-25 17:31
查看更多