2013-04-24 1 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

+0

var에 js가있는 var의 범위가 '제안'입니다 .. –

+0

모바일 Safari의 Javascript 콘솔에 오류가 있습니까? '설정> Safari> 개발자'(또는 이와 비슷한 항목)에서 활성화 할 수 있습니다. – Uooo

답변

3

You 're It It Wrong ™. 원시 HTML 문자열을 수정하지 말고 DOM을 수정하십시오.

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

당신 뿐만 아니라 배경 색상으로 선택할 수 있지만 신뢰할 아니다. 문제는 모바일 사파리는 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 저의 사랑하는 코드가 당신의 해결책과 함께 일하고 있습니다 :) –

관련 문제