1

好的。基本上,我正在为想要获取玩家姓名和头像的自定义加载屏幕的游戏服务器所有者开发一个 API,但不使用 PHP,仅使用 JavaScript、AJAX、HTML 等。

到目前为止,这是我想出的:

<!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 来做到这一点?

4

3 回答 3

0

没有 php 会使它变得更加困难,否则它只是一个简单的:

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

但是您可以在此处使用该功能:

在 JavaScript 中解析查询字符串

并致电:

var id = getQueryVariable('id');
$.get('http://api.sidewaykill.com/steam/name.php?id='+id)
于 2013-03-11T10:15:31.050 回答
0

不完全是 jQuery 答案,而是纯 Javascript:

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

将从 URL 的 GET 部分为您提供 id 的值,现在您可以将其插入 HTML 文档和 Ajax URL 的部分中。

使用 jQuery 你可以试试这个:http ://www.jquery4u.com/snippets/url-parameters-jquery/

你的意思是像这样插入价值?

$('#imgid').src = 'http://api.sidewaykill.com/steam/avatar.php?id=' + idvalue;
于 2013-03-11T10:11:09.673 回答
0

$.QueryString.id 将使用您包含的 $.QueryString 保存您的 ID 值。

将图像 html 更改为:

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

你想要的Javascript是

$.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);
于 2013-03-11T10:17:31.880 回答