javascript - 为什么 .css() 不适用于条件语句 bool 是真的?
问题描述
$(function() {
if ($("p").text().length > 20) {
console.log("length > 20")
$(this).text().css("color", "red")
} else {
console.log("opps")
}
})
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js">
</script>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptas quisquam asperiores eius quasi assumenda error dolorem? Quo sit quaerat ex quia inventore totam, officiis beatae, explicabo quod vitae et exercitationem.</p>
在这种情况下。控制台显示 $(...).text(...).css 不是函数
我不知道哪里错了?即使测试使用 .text() 也没有感觉
为什么文本中的 p 标签不会变成红色字??
解决方案
.text()
返回一个字符串。字符串没有.css
方法——只有 jQuery 集合有.css
方法。
另外,this
在您的代码中没有引用<p>
. 首先将 jQuery 集合保存<p>
在一个变量中,以便调用.css
它(或$('p')
再次调用)。
const $p = $("p");
if ($p.text().length > 20) {
console.log("length > 20")
$p.css("color", "red")
} else {
console.log("opps")
}
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js">
</script>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptas quisquam asperiores eius quasi assumenda error dolorem? Quo sit quaerat ex quia inventore totam, officiis beatae, explicabo quod vitae et exercitationem.</p>
推荐阅读
- certificate - 安装屏蔽数字证书
- extjs - 选择选取器未在移动模式下启动边缘选取器
- java - 系统中的通知声音已静音
- sign - 文件自签名后已被修改或损坏!(数据)
- python - (导入错误)由于尝试安装 gensim.models,因此无法使用 pip 安装软件包
- c++ - 如何将 Void* 转换为 size_t?
- node.js - NodeJS如何获取返回400 Bad Request的请求正文
- google-fit - 用户在特定时间的速度数据
- javascript - 如何使用javascript查找与字段匹配的项目?
- javascript - Vanilla Javascript 多个相同的选择,当您选择 1 个选项时,所有其他选择更改为相同的选项