javascript - jquery 计算字符数并添加类不起作用

标签 javascript jquery

我在这里找到了一些 javascript,但我似乎无法让它工作。

我有一个 id 为“latest”的 h1,如果少于 21 个字符,它应该具有 pt45 类。

// The number of characters
    var yourElement = $('h1.latest');
    var charLength = yourElement.text().length;
    if(charLength < 20){
       yourElement.addClass('pt45');
    }
.pt45 {
    font-size: 10px;
    color:red;
}
<h1 class="latest">123456789</h1>
<h1 class="latest">123456789123456789123456789123456789</h1>

最佳答案

  var yourElement = $('h1.latest');

这将返回一个包含匹配 NodeList 的 jQuery 对象。

yourElement.text().length; 会给出两个,因为你有两个 h1

相反,它必须是:

 jQuery("h1.latest").each(function() {
    if(jQuery(this).text().length < 21 ) {
       jQuery(this).addClass("pt45")
    }
 });
.pt45 {
    font-size: 10px;
    color:red;
}
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>


<h1 class="latest">123456789</h1>
<h1 class="latest">123456789123456789123456789123456789</h1>

您必须迭代节点列表并检查长度

关于javascript - jquery 计算字符数并添加类不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29696147/

相关文章:

javascript - React 中真正的自定义属性(例如微数据)

javascript - 如何在 Jquery 的 event.currentTarget 中选择/查找元素?

jquery - 如何限制 HTML5 输入类型 ="number"的用户输入字符长度?

Javascript 仅在刷新后加载(Ruby on rails - Materialize CSS)

javascript - 我使用 javascript 和 ajax 创建了一个在线打字测试页面。该代码在 google chrome firefox 中运行良好,但在 Internet Explorer 中运行不佳

javascript - 在HTML中使用 "button"和innerHTML时没有结果

javascript - 如何防止电话号码被转换成 Skype 链接?

javascript - jQuery slideToggle 在关闭时跳转

java - jqgrid 将 Jqgrid 数据发布回 Action 类

Jquery Autocomplete JSON字符串解析错误