jQuery JS 如何改变页面上的数字

Posted mqy1023

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery JS 如何改变页面上的数字相关的知识,希望对你有一定的参考价值。

只需要在控制台上执行下面代码,就可改变页面上相应内容的值

一、高亮页面上的所有数字

(function hilightNumber(jqObj) {
    // 不能替换script标签里的数字
    var domObj = jqObj[0];
    if (domObj.nodeName == "SCRIPT") {
        return;
    }
    // 如果标签里有标签,我们也不作替换,而是递归进去遍历内层的标签。
    var children = jqObj.children();
    if (children.length > 0) {
        for(var i=0; i<children.length; i++) {
            hilightNumber($(children[i]));
        }
    } else {
    // 标签里只有文字,没有内层标签的时候,才做替换,
    // 把123替换成带颜色的标签内包含123,就实现了高亮。
        var hilightedhtml = jqObj.html().replace(/([+\\-]?[0-9]+(\\.[0-9]+)?)/g, "<span style='background:yellow;'>$1</span>");
        jqObj.html(hilightedHtml);
    }
})($("body"));

二、改变金额数字

23,233,23元 => 23,233,23 * 0.9 元

(function hilightNumber(jqObj) {

    var discount = 0.9

    // 不能替换script标签里的数字
    var domObj = jqObj[0];
    if (domObj.nodeName == "SCRIPT") {
        return;
    }
    // 如果标签里有标签,我们也不作替换,而是递归进去遍历内层的标签。
    var children = jqObj.children();
    if (children.length > 0) {
        for(var i=0; i<children.length; i++) {
            hilightNumber($(children[i]));
        }
    } else {
    // 标签里只有文字,没有内层标签的时候,才做替换,
    // 把123替换成带颜色的标签内包含123,就实现了高亮。
        var hilightedHtml = jqObj.html().replace(/^(([1-9][0-9]{0,2}(,\\d{3})*)|0)(\\.\\d{1,2})元$/g, function(word){
          
          word = word.replace(',', "")
          word = word.replace('元', "")
          word = word.replace('.', "")
          word = parseInt(word * discount) + ""

          pointStr = word.substring(word.length-2)
          headNum = word.substring(0, word.length-2)
          headNum1 = headNum.replace(/(?=(?!(\\b))(\\d{3})+$)/g, ",")
          
          return headNum1 + "." + pointStr + "元"
          }
        );
        jqObj.html(hilightedHtml);
    }
})($("body"));

以上是关于jQuery JS 如何改变页面上的数字的主要内容,如果未能解决你的问题,请参考以下文章

jQuery JS 如何高亮页面上的所有数字

jQuery 是如何判断HTML页面加载完毕的?它的原理是啥?

jquery,iframe,如何在父窗口监听,子窗口发生改变时,父窗口获取子窗口的值

如何使用 jquery 获取页面上的值并使用 php 将其回显到页面上

jquery 改变iframe内容

jquery 切换数量,动态改变样式,隐藏展开