2012-04-19 7 views
0

PhoneGap 응용 프로그램에서 jquery를 사용하여 화면 스크랩을 수행하려고합니다. 문제는 내가 선택기를 사용할 수 있도록 내가 현재 DOM에 대상 HTML을로드 할 때, 그것은 자바 스크립트를 실행하려고 시도한다는 것입니다 :PhoneGap에서 jQuery로 화면 스크랩

 $(function() { 
      $.get('http://www.bloomberg.com/quote/csfb:ind', function(data) { 
       var elements = $("<div>").html(data)[0].getElementsByClassName("price")[0]; 
      }); 
     }); 

경우 get 잘 작동하고 HTML에 끌어하지만로드를 시작하면, 그것은 자바 스크립트를 실행하려고합니다.

어쨌든 모든 자바 스크립트 태그를 제거 할 수 있습니까?

+0

이 닭과 달걀 문제 같은 느낌. 모든 JavaScript를 제거한다면 jQuery는 어떻게 실행될 수 있습니까? 스크립트가 실행될 때 스트립 핑 부분을 에 넣으면 은 아직 구문 분석되지 않습니다. 이 문제는 전혀 사소하지 않습니다. –

답변

1

이것은 모든 구문 분석이 독자적으로 생각해내는 것처럼 모든 경우에 작동하지 않을 수도있는 가장 신뢰할 수있는 방법처럼 보입니다.

Removing all script tags from html with JS Regular Expression

나는 그 대답에서 stripScripts 기능을 복사하는 경우 :

function stripScripts(s) { 
    var div = document.createElement('div'); 
    div.innerHTML = s; 
    var scripts = div.getElementsByTagName('script'); 
    var i = scripts.length; 
    while (i--) { 
     scripts[i].parentNode.removeChild(scripts[i]); 
    } 
    return div.innerHTML; 
} 
$(function() { 
    $.get('http://www.bloomberg.com/quote/csfb:ind', function (data) { 
     var elements = $("<div>").html(stripScripts(data))[0].getElementsByClassName("price")[0]; 
    }); 
});