2013-04-24 83 views
0

我用下面的代碼替換html,它在瀏覽器中工作,但不能在ipad safari瀏覽器中工作如何解決這個問題?Javascript,替換不工作在iPad中,如何使用替換在iPad中?

var text=$('#content_area').html(); 
var text2=text.replace('<span style="background-color: rgb(233, 207, 236);">proposes</span>' 
, 'proposes'); 
$('#content_area').html(text2); 
+0

'範圍'是什麼? – VisioN 2013-04-24 09:41:07

+0

其在js中的var類似var range ='proposals'.. – 2013-04-24 09:42:12

+0

您是否在移動Safari的Javascript控制檯中看到任何錯誤?你可以在Settings> Safari> Developer中啓用它(或類似的東西)。 – Uooo 2013-04-24 09:44:38

回答

3

你在做錯了。不要修改原始HTML字符串,修改DOM。

$('#content_area span:contains("proposes")').replaceWith('proposes'); 

可以通過背景顏色選擇爲好,但它不是那麼可靠。問題是最有可能的是,移動Safari不保留顏色RGB(),但在十六進制格式,所以這樣的事情可能工作:

$('#content_area span').filter(function() { 
    return ($(this).css('background-color') === 'rgb(233, 207, 236)' 
      || $(this).css('background-color').toLowerCase() === '#e9cfec'); 
}).replaceWith('proposes'); 

最好的解決辦法是,如果你可以添加一個類跨度或以其他方式可靠地區分它們,以便選擇器將是明確的。

+0

感謝Juhan我心愛的代碼工作..與您的解決方案:) – 2013-04-24 10:08:40