抱歉我的英文=) 我需要替换页面上的一些元素。这是我的代码:
var text1 = $('body').html().replace(/text1/, 'text11');
var text2 = $('body').html().replace(/text2/, 'text22');
var text3 = $('body').html().replace(/text3/, 'text33');
array = [text1, text2, text3];
for (var i = 0; i < array.length; i++) {
$('body').html(array[i])
};
但是要仅替换第一个和第三个,如果删除第三个元素数组,则更改第一个和第二个元素。请告诉我怎么做。谢谢!
答案 0 :(得分:2)
那是因为在评估变量时原始的主体html保持不变。您需要链接替换或使用先前的变量进行其他替换:
var text1 = $('body').html().replace(/text1/, 'text11');
var text2 = text1.replace(/text2/, 'text22');
var text3 = text2.replace(/text3/, 'text33');
然后你不需要任何迭代..
$('body').html(text3);
答案 1 :(得分:2)
var items = [
{ find: /text1/, replace: 'text11' },
{ find: /text2/, replace: 'text22' },
{ find: /text3/, replace: 'text33' }
];
var text = $('body').html();
for (var i = 0; i < items.length; i++)
{
var item = items[i];
text = text.replace(item.find, item.replace);
}
$('body').html(text);