-1

getElementById("game_image") を試みていますが、TagName は 'img' です。'src' タグ内のデータ、具体的には 'key=f430a2c1' トークンが必要です。:

<img id="game_image" src="img/index.php?key=f430a2c1&rand=956875" alt="game image." style="padding-right:150px;" />

*

$("#b_hint").click(function(){
//        var images = document.getElementsByTagName("img"),
//          wanted;
var data = document.getElementById("game_image"), wanted;
wanted = data[1].src;
//    if (images.length) {
//      wanted = images[1].src;
//    if (wanted) {
//       wanted = wanted.split("?");
//       if (wanted.length >= 2 && wanted[1].indexOf("&") !== -1) {
//           wanted = wanted[1].split("&")[0];
//      }
// }
//}

//if (typeof wanted !== "string") {
//    wanted = "";
// }

alert(wanted);
4

6 に答える 6

0

srcURL に「&」で区切られたパラメータがさらに含まれる可能性があることを考慮すると、次のkey=...ように抽出できます。

function getKey(url) {
    var idx1 = url.indexOf("?") + 1;
    if (idx1 == -1) { return ""; }

    var idx2 = url.indexOf("&");
    if (idx2 == -1) { idx2 = url.length; }

    return url.substring(idx1, idx2);
}

$("#b_hint").click(function() {
    var img = document.getElementById("game_image");
    var wanted = getKey(img.src);
    ...

:関数が適切に機能する
ためgetKey()には、'key' パラメータを '?' の直後に指定する必要があります。(例:...?key=...ではありません ...?some=other&key=...)。

于 2013-05-15T18:58:11.753 に答える
-1

Jquery?! 作業フィドル - > http://jsfiddle.net/mpyfQ/8/

    var data = $("#game_image").attr("src");
    data = data.substring(data.indexOf('?') + 1);
于 2013-05-15T18:50:52.217 に答える