>  기사  >  웹 프론트엔드  >  도메인 간 요청에 JQuery 사용_javascript 팁

도메인 간 요청에 JQuery 사용_javascript 팁

WBOY
WBOY원래의
2016-05-16 18:35:571015검색
오늘 우연히 위 프로그램을 보았는데, 공유해주세요!
원래 주소: Cross-domain-request-with-jquery
물론 위의 Demo도 있습니다. 원래 주소는 Demo

입니다. $(document).ready(function(){
var 컨테이너 = $ ('#target' );
container.attr('tabIndex','-1')
$('.ajaxtrigger').click(function(){
var Trigger = $(this );
var url = Trigger.attr('href');
if(!trigger.hasClass('loaded')){
trigger.append(' ');
trigger.addClass('loaded');
var msg = Trigger.find('span::last')
} else {
var msg = Trigger.find(' span::last' )
doAjax(url,msg,container);
return false
}); {
/ / URL이 http로 시작하는 경우
if(url.match('^http')){
// YQL 호출 어셈블
msg.removeClass('error')
msg.html('(로드 중...)');
$.getJSON("http://query.yahooapis.com/v1/public/yql?"
"q=select * from html where url=" "
encodeURIComponent(url)
""&format=xml'&callback=?",
function(data){
if(data.results[0]){
var data = filterData (data.results[0]);
msg.html(' (ready.)')
html(data). 🎜>효과("하이라이트",{},1000);
} else {
msg.html(' (error!)')
msg.addClass('error'); var errormsg = '< ;p>오류: 페이지를 로드할 수 없습니다.

';
container.
html(errormsg).
focus(). ',{color: '#c00'},1000);
}
}
)
} else {
$.ajax({
url:
timeout:5000,
성공: function(data){
msg.html(' (ready.)')
container.
html(data).
효과( "highlight",{},1000);
},
error: function(req,error){
msg.html(' (error!)'); msg.addClass(' error');
if(error === 'error'){error = req.statusText;}
var errormsg = '통신 오류가 발생했습니다: ' error; .
html (errormsg)
focus().
효과('highlight',{color:'#c00'},1000)
},
beforeSend: function(data ){
msg.removeClass('error');
msg.html(' (로드 중...)')
}
}); 🎜>function filterData( data){
// 모든 불쾌한 항목을 필터링합니다
// 본문 태그 없음
data = data.replace(/]*>/ g,'') ;
// 줄바꿈 없음
data = data.replace(/[r|n] /g,'')
// 주석 없음
data = data.replace (/<- -[Ss]*?-->/g,'');
// noscript 블록 없음
data = data.replace(/]*> ;[Ss]* ?/g,'');
// 스크립트 블록 없음
data = data.replace(/]*>[Ss] *?/g,'');
// 자체 종료 스크립트 없음
data = data.replace(//,''); // [.. . 필요에 따라 추가 ...]
데이터 반환
}
});
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.