1

私は3つのhtmlファイルと3つのjsファイルを持っています

index.html、rank.html、score.html

global.js、rank.js、score.js

index.htmlには、iframeを使用してrank.htmlとscore.htmlを含めました。

global.jsで、Varランクを宣言しました。&global.jsはrank.html&score.htmlに含まれています。

rank.jsのrankの値を更新していますが、score.jsの更新された値にアクセスしたいと思います。score.jsでは、更新された値を取得できません。これにより、未定義の値が得られます。

スコア.htmlにrank.jsを含めたくないので、global.jsを作成してhtmlファイルに含めました。

これが私のコードです、

Index.html

<html>
    <head>

    </head>
    <body>
<iframe src="../rank/rank.html" frameborder = "0" scrolling="no" width="50%" height = "100%"></iframe>
<iframe src="score.html" frameborder = "0" scrolling="no" width="50%" height = "100%"></iframe>

    </body>
</html> 

global.js

var rank;

score.js

$(document).ready(
        function(){     


                    setInterval(dataupdate, 10000);


    });
function dataupdate() { 

alert(rank) 

};

ランク.js

$(document).ready(
            function(){     


                        setInterval(dataupdate, 10000);


        });
    function dataupdate() { 

    rank = "first";

    };

スコア.jsファイルのランクの値を更新して、その値にアクセスする方法を教えてください...

ありがとう.....

4

4 に答える 4

1

global.jsがindex.htmlに含まれている場合は、window.top.rank(または、index.htmlがフレームに存在する場合はwindow.parent.rank)を使用する必要があります。

于 2012-07-19T08:54:41.450 に答える
1

行ったようにグローバル変数を宣言すると、windowオブジェクトのプロパティとして作成されますwindow.rank。メインウィンドウと2つのiframeには別々windowのオブジェクトがあるためwindow.rank、メインフレームから割り当てられたwindow.rankものは、いずれかのiframeからアクセスされたものと同じではありません。

iframe内からメインウィンドウオブジェクトのrankプロパティにアクセスするには、parent.rank代わりにを使用できますwindow.rank

于 2012-07-19T08:55:26.067 に答える
0

インデックスに変数を保持する必要があります。これは、iframeからのみ親変数にアクセスできるためです。

index 

var a=5;

-----------

rank

parent.a=6

これでスコアはparent.a6と読み替えることができます

于 2012-07-19T08:52:39.267 に答える
0

試す

window.parent.rank

また

window.top.rank
于 2012-07-19T08:54:02.557 に答える