如何在 IE 中将大小调整器添加到文本区域?

Posted

技术标签:

【中文标题】如何在 IE 中将大小调整器添加到文本区域?【英文标题】:How to add resizer to textarea in IE? 【发布时间】:2012-08-02 05:41:45 【问题描述】:

如何像在 Chrome 和 Firefox 中一样在 IE 中为 textarea 添加调整大小?

jQuery.resizable() 对我不起作用。

【问题讨论】:

看看我的把手插件我做了一段时间的灵感:github.com/PeeHaa/gripHandler 也许这是有用的信息:Chrome 和 Firefox 的 textarea 调整大小功能是原生的。这意味着您必须搜索并试用 Internet Explorer 插件。祝你好运。 【参考方案1】:

Internet Explorer(和 Microsoft Edge,截至 2016 年 5 月 5 日)不支持对 textarea 元素进行原生抓取/调整大小。虽然这些可能最终会在未来(在 Microsoft Edge 中)得到支持,但目前最好的选择是 polyfill 功能。

网上有很多选项可以做到这一点,但如果您使用 jQuery 和 jQuery UI,您可以使用 Resizable 小部件:

$("textarea").resizable(
    handles: "se" // place handle only in 'south-east' of textarea
);

默认情况下,这会将处理程序放在文本区域下方。我不喜欢这样:

.ui-resizable-handle 
    transform: translateY(-100%);

您可以在此处查看最终结果:http://jsbin.com/rumokazepo/edit?html,css,js,output

【讨论】:

因为它不如支持的浏览器上的内置调整大小 - 我如何排除已经支持 CSS resize=both 的 Firefox、Chrome 等的脚本代码? (无动态服务器端 HTML 生成)【参考方案2】:

这不能在 CSS 中通过定义 widthheight 来解决吗:

.resize 
     width: 100px;
     height: 100px;
 

 <textarea class="resize"></textarea>

【讨论】:

并非如此。问题是关于允许用户动态调整 textarea 的大小,而不是设置 textarea 的大小。

以上是关于如何在 IE 中将大小调整器添加到文本区域?的主要内容,如果未能解决你的问题,请参考以下文章

如何在移动设备上调整灵活文本区域的大小?

添加滚动到文本区域

IE 11 的自动调整文本区域大小

在 IE 文本区域中不起作用

阻止文本区域在 Safari 中调整大小

如何将cmd中的命令输出到文本区域