如何在 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 中通过定义 width
和 height
来解决吗:
.resize
width: 100px;
height: 100px;
<textarea class="resize"></textarea>
【讨论】:
并非如此。问题是关于允许用户动态调整 textarea 的大小,而不是设置 textarea 的大小。以上是关于如何在 IE 中将大小调整器添加到文本区域?的主要内容,如果未能解决你的问题,请参考以下文章