1

FIRST.html と SECOND.html という 2 つの html ファイルがあります。

FIRST.html には ID A1 から A100 の DIV があり、SECOND.html には ID B1 から B100 の DIV があります

FIRST.html で特定の DIV をクリックすると、ユーザーを SECOND.html にリダイレクトし、対応する DIV を表示したいと考えています。

たとえば、ユーザーが FIRST.html の DIV id=A10 をクリックすると、SECOND.html にリダイレクトされ、DIV id=B10 が表示されます。

これを行う方法について考える必要があります。あるページから別のページにいくつかのパラメーターを渡し、それらのパラメーターを使用して JavaScript を呼び出すことができるかどうかを知りたいです。

ありがとうございました!

4

3 に答える 3

2
    //FIRST.html
    $("#A10").click(function () {
        document.location.href = "SECOND.html?id=B10";
    })

    //SECOND.html

    $(function () {
        //Prepare the parameters
        var q = document.location.search;
        var qp = q.replace("?", "").split("&");
        var params = {};
        $(qp).each(function (i, kv) {
            var p = kv.split("=");
            params[p[0]] = p[1];
        });
        var idToOpen = params["id"]

        $("#" + idToOpen).show();
    })

    //You can add some other parameters
    document.location.href = "SECOND.html?id=B10&message=SomeMessage";

    //Get it like this

    $(function () {
        //Prepare the parameters
        var q = document.location.search;
        var qp = q.replace("?", "").split("&");
        var params = {};
        $(qp).each(function (i, kv) {
            var p = kv.split("=");
            params[p[0]] = p[1];
        });


        var idToOpen = params["id"]
        var message = params["message"]
        $("#" + idToOpen).show();
        alert("message")
    })
于 2012-07-30T03:18:01.300 に答える
2

You could try something like this:

Add this to FIRST.html

$(document).ready(function() {
    $('div').click(function () {
       id = $(this).attr('id').substring(1);
       window.location = 'SECOND.html?id=' + id;
    });

    var getVar = location.search.replace('?', '').split('=');
    $('div[id$=' + getVar[1] + ']')[0].scrollIntoView();
});

Add this to SECOND.html

$(document).ready(function() {
    $('div').click(function () {
       id = $(this).attr('id').substring(1);
       window.location = 'FIRST.html?id=' + id;
    });

    var getVar = location.search.replace('?', '').split('=');
    $('div[id$=' + getVar[1] + ']')[0].scrollIntoView();
});
于 2012-07-30T03:49:49.650 に答える
1

FIRST.htmlにこのコードを入れてください

$('div').click(function() {
var someId = $(this).attr("id");
window.open('SECOND.html/#'+someId);
  });

または、SECOND.html /#の代わりにフルURLパスを使用できます。これは単なるアイデアであり、テストされていませんが、試すことができます。PSこれらは2つの異なるページなので、両方に同じIDを付けて、この例を試すことができます。純粋なJavaScriptではなくJqueryです。

于 2012-07-30T03:07:23.160 に答える