如何使用mootools或其他包含高度的屬性訪問scrollHeight,以便我可以調整它的大小以生成autogrow textarea?Mootools textarea scrollHeight
0
A
回答
2
Mootools提供了多種Element'尺寸'功能,爲您提供有關可滾動和絕對元素尺寸的信息。完整的文檔在這裏可用:http://mootools.net/docs/core/Element/Element.Dimensions
你想做的是比較元素的getScrollSize()函數返回值到元素的getSize()函數 - 特別是'y'成員,它代表元素和可滾動區域高度, 分別。沿此線的東西應該工作:
var myElement = $('myElement'); // get a reference to your element
var scrollSize = myElement.getScrollSize(); // MooTools-specific function.
var elementSize = myElement.getSize(); // MooTools-specific function.
if (scrollSize.y > elementSize.y) {
// determine whether the scrollable area is greater than the dimensions
// of the element. If so, resize the element to match the scrollable area.
myElement.setStyle('height', scrollSize.y + 'px');
}
0
大衛·沃爾什造就了一支優秀的插件只是這個目的: http://davidwalsh.name/flext-textrea
0
這裏有一個簡單的方法,我使用的擴展,而且合同文本區域。
你總是會遇到的問題是textare(填充/邊框)上的樣式。 首先要知道的是,getSize()將從絕對頂部到絕對底部獲得textarea的大小,同時考慮填充和邊框。但是,文本區域.getStyle('height')。toInt()的實際樣式高度是沒有填充和邊框的文本框的內部。這是你需要感興趣的部分,因爲當你設置你的高度時,它會設置它,它不會將textarea的全部高度從絕對頂部設置到底部。
下面是一個工作示例,帶有樣式化的textarea(請參閱演示) 如果您在domReady中運行它,它也會正確調整元素的大小。
function expBox(el){
var e = $(el.id);
if(typeof(e._expBox) == "undefined"){
var v = e.value;
e.value = "";
var ss = e.getScrollSize();
var s = e.getSize();
var h = e.getStyle("height").toInt();
e._expBox = (s.y-h)-(s.y-ss.y);
e.value = v;
}
var k = event.keyCode || event.charCode;
if(k == 8 || k == 46){
e.setStyle("height","auto");
}
var ss = e.getScrollSize();
e.setStyle("height",(ss.y-e._expBox));
}
相關問題
- 1. Textarea替換Firefox中的scrollHeight
- 2. 一旦你設置了scrollHeight,就不能設置textarea的行
- 3. <textarea> scrollHeight在身體負載上爲零
- 4. 是<textarea> scrollHeight屬性在MSIE8和FF不同
- 5. scrollHeight的替代DOM屬性
- 6. 小數scrollHeight?
- 7. JavaScript set scrollHeight
- 8. Chrome中的ScrollHeight
- 9. p:selectcheckboxmenu - 自定義scrollheight
- 10. 如何確定scrollHeight?
- 11. 獲取RadGrid的ScrollHeight
- 12. 爲什麼IE/Chrome最初給textarea提供了錯誤的clientHeight和scrollHeight?
- 13. 爲什麼Chrome上的輸入變化時,TEXTAREA會出現錯誤的scrollHeight?
- 14. scrollHeight不與位置:絕對
- 15. 什麼是offsetHeight,clientHeight,scrollHeight?
- 16. 獲得scrollHeight屬性是DIV
- 17. iframe scrollHeight在Chrome 5版本
- 18. FireFox中的scrollHeight屬性
- 19. 擴展mootools Element.Events
- 20. Mootools的表單提交
- 21. scrollWidth/scrollHeight屬性給出的尺寸無效
- 22. 閱讀帶有顯示的div的scrollHeight:無父母
- 23. Mootools Autocomplete
- 24. mootools fx.reveal
- 25. mootools slideshow2
- 26. mootools&nodejs
- 27. jQuery scrollTop不等於div底部的scrollHeight
- 28. 停止滾動後scrollTop> = scrollHeight
- 29. 通過Selenium獲取scrollheight跨瀏覽器
- 30. 火狐scrollHeight屬性VS溢出