gpt4 book ai didi

JQuery 更改所有元素文本

转载 作者:行者123 更新时间:2023-11-30 23:51:38 27 4
gpt4 key购买 nike

我需要 jquery 来更改所有页面中的数字。例如我想将 1 更改为 1,所以我尝试了以下方法:

$("*").each(function(){
$(this).html( $(this).html().replace(1,"۱") );
})

但这也会改变 css 规则和属性。有没有什么技巧可以转义CSS和属性?

最佳答案

这不是 jQuery 自然适合的工作。不要让 jQuery 获取所有元素的平面列表,而是自己递归遍历 DOM 树,搜索文本节点来执行替换。

function recursiveReplace(node) {
if (node.nodeType === Node.TEXT_NODE) {
node.nodeValue = node.nodeValue.replace("1", "۱");
} else if (node.nodeType == Node.ELEMENT_NODE) {
$(node).contents().each(function () {
recursiveReplace(this);
});
}
}

recursiveReplace(document.body);

查看实际效果 here .

关于JQuery 更改所有元素文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5494259/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com