0
我的JavaScript是非常基本的,所以我雖然我會問專家,以我的當前方法是否正確,如果有更好的,更可接受的方式。正確的方式來通過'這'功能在javascript
通常我會使用jQuery的。對事件來觸發的功能,如:
$("body").on("input", "textarea", textareaAutoGrow);
function textareaAutoGrow() {
var pad = $(this).outerHeight(false) - $(this).innerHeight();
this.style.height = "auto";
this.style.height = (this.scrollHeight + pad) + "px";
}
這樣一來,「這個」自動傳遞,但是我現在需要做的窗口調整大小一樣的東西所有textareas的事件,而不僅僅是一個特定的事件。
下面是我已經做到了:
$(window).on("resize", refreshAutoGrow);
function refreshAutoGrow() {
$el = $(".text-field.autogrow").filter(function() {
return $(this).val();
});
$el.each(function() {
textareaAutoGrow.call(this);
});
}
我使用.CALL稱爲textareaAutoGrow功能 - 這是我從看jQuery的部件回升。
它有效,但正如我所說,這是一個猜測 - 這是正確的方法,還是有更多接受的方式來做我想要的?
先上(「輸入」將無法在動態文本域工作,你需要使用的代碼形式的問題'$(「身體」)。 on(「input」,「textarea」' – jcubic
現在第二個代碼將不起作用,因爲'textareas'將持有對body的引用 – jcubic
Ahh,當然;;)啞巴我然後刪除那部分。它在這個答案。 – eisbehr