我已经构建了一个在界面上工作的Web应用程序,现在我面临着使用从jQuery动态添加到画布的元素的挑战。
例如
$(document).ready(function(){
//On Focus for textarea of Sheet
$("textarea").focus(function(){
$(this).css("height", "250px");
});
$("textarea").focusout(function (){
$(this).css("height", "");
});
});
现在这部分工作正常,它根据需要扩展和缩小我的textarea
。 (一切都很好!)
然而,这是我的问题,我向画布onclick
appends
个textarea
元素。
现在我无法在.focus
或.focusout
上使用.appendTo
。当我使用$("textarea").focus
页面时,不刷新。 (添加新元素时不刷新)
如何解决此问题(正确方法),我需要WordList list = (WordList)arrayString[3];
list.display();
能够使用新添加的元素。
谢谢!
答案 0 :(得分:2)
使用jQuery's on的代表绑定他们。
$("body").on("focus","textarea",function(){
$(this).css("height", "250px");
});
$("body").on("focusout","textarea",function (){
$(this).css("height", "");
});
当这些事件发生在选择器(" body")中时,这会将焦点和焦点事件委托给匹配的选择器(" textarea")。如果有一个比body更接近的元素来选择理想的事件委托的父元素,尽管根据页面的动态特性并不总是可行的。