Javascript jQuery通过波斯数字转换拉丁数字

Javascript jQuery通过波斯数字转换拉丁数字,javascript,jquery,Javascript,Jquery,我想将拉丁数字改为波斯语数字,但我的代码工作正常,但此代码将标记和内的所有数字转换为偶数! 我想替换标签和 如何防止转换标签内的数字和 演示: persian={0:'۰'、1:'۱'、2:'۲'、3:'۳'、4:'۴'、5:'۵'、6:'۶'、7:'۷'、8:'۸'、9:'۹'; 函数遍历(el){ if(el.nodeType==3){ var list=el.data.match(/[0-9]/g); if(list!=null&&list.length!=0){ 对于(var i=0;

我想将拉丁数字改为波斯语数字,但我的代码工作正常,但此代码将标记
内的所有数字转换为偶数!
我想替换标签

如何防止转换标签内的数字

演示:

persian={0:'۰'、1:'۱'、2:'۲'、3:'۳'、4:'۴'、5:'۵'、6:'۶'、7:'۷'、8:'۸'、9:'۹';
函数遍历(el){
if(el.nodeType==3){
var list=el.data.match(/[0-9]/g);
if(list!=null&&list.length!=0){

对于(var i=0;i,在您的示例中,您正在解析和替换整个文档中的符号,包括脚本和其他标记。请尝试仅解析这些数字的容器:

var elementToBeParsed = document.getElementById('baste'); //find div with numbers
traverse(elementToBeParsed);
UPD: 如果需要解析页面的整个文本,我会用一些div包装内容,这样所有其他标记都在该容器之外

...    
<body>
  <style>.wrapper{background-color:#fff; .... }</style>
  <div id="content" class="wrapper">
     all the content here 123456
  </div>
  <script ...>...</script>
  <script ...>...</script>
</body>
。。。
.wrapper{背景色:#fff;…}
这里的所有内容都是123456
...
...

我想替换正文中的数字,不在标记中
@Mehdi查看我的更新答案。你需要使用#content元素调用traverse。这样里面的所有东西都会被解析。脚本和样式标记在外面。所以它们应该不会被碰。不,这对我没有帮助。你不能使用
里面的任何标记。