2013-03-11 3 views
1

확인. 기본적으로 나는 플레이어 이름과 아바타를 가져 오는 사용자 지정로드 스크린을 원하지만 JavaScript, JavaScript, AJAX, HTML 등만 사용하는 게임 서버 소유자를위한 API를 개발 중입니다.jQuery 쿼리 문자열을 사용하는 방법은 무엇입니까?

이것은 내가 작성한 것입니다. 지금까지 :

<!DOCTYPE html> 
<html> 
<head><title></title> 
<script src="//static.sidewaykill.com/js/jQuery/1.5.2.min.js"></script> 
<script src="//static.sidewaykill.com/js/jQuery/ExtDomain.js"></script> 
</head> 
<body> 
<script type="text/javascript"> 
(function($) { 
    $.QueryString = (function(a) { 
     if (a == "") return {}; 
     var b = {}; 
     for (var i = 0; i < a.length; ++i) 
     { 
      var p=a[i].split('='); 
      if (p.length != 2) continue; 
      b[p[0]] = decodeURIComponent(p[1].replace(/\+/g, " ")); 
     } 
     return b; 
    })(window.location.search.substr(1).split('&')) 
})(jQuery); 

$.get('http://api.sidewaykill.com/steam/name.php?id=76561198017389807') 
.success(function(data) { 
    $('#steamname').html(data); 
}); 
</script> 
Welcome <span id="steamname"></span>.<br /><br /> 
<img src="http://api.sidewaykill.com/steam/avatar.php?id=76561198017389807" alt="Player Avatar" /> 
</body> 
</html> 

내가 원하는 것은 해당 ID 값을 게임에서 제공하는 값으로 대체하는 방법을 찾는 것입니다. 예를 들어, http://server.com/loading.html?id=76561198017389807을 통해 페이지에 액세스하면 api.sidewaykill.com/steam/name.php?id=76561198017389807 이미지 api.sidewaykill.com/steam/avatar.php?id=76561198017389807이 호출됩니다. jQuery를 더 많이 사용하면 어떻게 될까요?

+0

입니다. jQuery에서 원하는 것은 무엇입니까? 이 페이지를 브라우저에로드하고 있습니까, 아니면 일종의 사용자 정의 프레임입니까? QT/MFC/AnyLib HTML보기와 비슷합니까? 좀 더 자세히 설명해주세요. –

+0

게임을 사용하여 페이지에로드하고 있습니다. 게임은 서버 (Garry 's Mod)에 가입하는 동안이 페이지를로드하고 PHP에 구문 분석을 요구하는 SteamID64 페이지를 제공합니다. 나는 서버 측 스크립팅을 사용하여 제작자없이이 작업을 수행 할 방법을 만들고 있습니다. – Skilledway

+0

왜 이전 버전의 jQuery를 사용하고 있습니까? 처음부터 다시 시작하면 검토 할 코드가 없으므로 이후 버전을 쉽게 사용할 수 있습니까? – GGJ

답변

0

정확히는 jQuery를 대답하지만, 순수 자바 스크립트 :

var idvalue = decodeURI((RegExp('id=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]); 

지금 당신은 당신의 HTML 문서와 Ajax의 부분으로 연결할 수 있습니다, URL의 GET 부분에서 당신에게 ID의 값을 줄 것이다 URL

당신이 시도 할 수 jQuery를 사용하여 : http://www.jquery4u.com/snippets/url-parameters-jquery/

당신의 값을 연결하기 위해이 같은 말인가요?

$.get('http://api.sidewaykill.com/steam/name.php?id=<?= $_GET['id'] ?>') 

하지만 당신은 여기에 기능을 사용할 수 있습니다 :

$('#imgid').src = 'http://api.sidewaykill.com/steam/avatar.php?id=' + idvalue; 
+0

어떻게 연결하는지 묻는 중이었지만 어쨌든 고마워요. 편집 : 당신이 var을 주었다는 것을 깨달았습니다. 그러나 자바 스크립트를 작성한 이후로 오랜 시간이 걸렸습니다. 어떻게 jQuery 코드에 추가하고 코드를 사용하여 이미지를 얻을 수 있습니까? – Skilledway

+0

글쎄 이미지에 HTML 태그의 id 속성을 주면 위 편집 포스트에 삽입 한 코드를 사용할 수 있습니다. 두 라인 모두 문서로드 스크립트에 들어가 페이지가 완전히로드되면 실행됩니다. – Husman

0

없음 PHP, 그렇지 않으면 그냥 간단, 그것은 훨씬 더 열심히하지 않습니다

Parse query string in JavaScript

및 전화 :

var id = getQueryVariable('id'); 
$.get('http://api.sidewaykill.com/steam/name.php?id='+id) 
0

$ .QueryString.id는 포함 된 $ .QueryString을 사용하여 ID의 값을 보유합니다.

변경 이미지에 HTML : 당신이 원하는

<img id="avatarimage" src="http://api.sidewaykill.com/steam/avatar.php?id=placeholderimageid" alt="Player Avatar" /> 

그리고 자바 스크립트는 질문은 매우 명확하지 않다

$.get('http://api.sidewaykill.com/steam/name.php?id=' + $.QueryString.id) 
    .success(function(data) { 
    $('#steamname').html(data); 
}); 

$('#avatarimage').attr('src', 'http://api.sidewaykill.com/steam/avatar.php?id=' + $.QueryString.id); 
+0

아쉽게도 코드의 이미지 부분에 이미지가 출력되지 않습니다.- http://api.sidewaykill.com/steam/example.html?id=76561198017389807에서 사용한 코드를 볼 수 있습니다. – Skilledway