javascript - 如何有选择地将脚本应用于元素?
问题描述
我有一个脚本,可以使 textareas 扩展以适应其中的文本。我希望将其应用于我网站上的所有文本区域,除了一个。无论如何要停止一个元素的脚本。
正在使用的脚本:
var autoExpand = function (field) {
// Reset field height
field.style.height = 'inherit';
// Get the computed styles for the element
var computed = window.getComputedStyle(field);
// Calculate the height
var height = parseInt(computed.getPropertyValue('border-top-width'), 10)
+ parseInt(computed.getPropertyValue('padding-top'), 10)
+ field.scrollHeight
+ parseInt(computed.getPropertyValue('padding-bottom'), 10)
+ parseInt(computed.getPropertyValue('border-bottom-width'),
10);
field.style.height = height + 'px';
};
document.addEventListener('input', function (event) {
if (event.target.tagName.toLowerCase() !== 'textarea') return;
autoExpand(event.target);
}, false);
文本区域:
<textarea id="sendie" maxlength = '100' ></textarea>
解决方案
CSS
textarea {
resize: none;
}
按 ID:
#sendie {
resize: none;
}
那行不通,将其用于您的功能
document.addEventListener('input', function (event) {
if (event.target.tagName.toLowerCase() !== 'textarea') return;
autoExpand(event.target);
document.getElementById("sendie").style.resize = "none"
}, false);
假设“sendie”是你不想惹的一个。
推荐阅读
- python - Python 中的 Datacompy 库在报告中将阿拉伯字母写成乱码
- xcode - watchOS上的SwiftUI按钮高度
- selenium - Appium:Andriod Emulator Drop Down 在连接 VPN 后不工作
- http - 需要帮助解决 Istio IngressGateway HTTP ERROR 503
- python - 使用 tweepy 取消转发所有推文
- c# - 更改内联后 TextBlock 停止对数据绑定做出反应
- django - django 如何获取序列化器字段的值?
- c# - 使用来自 C# Uno 项目的跨平台 C++ 动态库
- java - 如何停止处理 akka 流中的其他元素?
- python - Spark 上 GRU 网络的分布式训练 - PyTorch 实现