0

可能であれば jquery/javascript を使用し、iframe 内の URL 変数 frim を取得したい

私のiframeリンクは以下のようになります - ソースは動的に変化します

<iframe class="box" src="lightbox.html?img=images/lightbox/blue-shoes.jpg" scrolling="no" frameborder="0"></iframe>

次に、lightbox.html iframe 内から - img (images/lightbox/blue-shoes.jpg) 変数を取得し、画像のソースを変更したい

問題は - iframe 内から iframe ソース URL 変数を取得する方法がわかりません

PHPの使用を避けようとしています

私はこれを似たようなものに使用しましたが、機能させることはできません

function getUrlVars() {
var vars = {};
var parts = document.referrer.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
    vars[key] = value;
});
return vars;
}
var first = getUrlVars()["ref"];
4

2 に答える 2

1

iframe 内でスクリプトを制御する場合、リファラーの代わりに document.location.herf を使用する例を次に示します。lightbox.html:

<html>
<head>
<script>

    function getUrlVars() {
    var vars = {};
    var parts = document.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
            vars[key] = value;
    });
    return vars;
    }
    var first = getUrlVars()["img"];
    alert(first);
    var test = function(){
        first = 'images/red.jpg'
        alert(first);
    }
</script>

</head>
<body>
    <div>Inside</div>
    <button onclick="test()">change url</button>
</body>
</html>
于 2012-12-06T17:46:55.363 に答える
0

JQuery を使用してこれを行うには、これを試してください。

ページ上の画像 lightbox.html に広告 ID を付けます。

<img id="ImageID" src="whatever" />

次に、この JQuery を使用して src 属性を変更します

$('#ImageID').attr('src', 'whatever');

アップデート

実際、これはおそらく IFrame であるため機能しません。同じオリジン ポリシーにより、これを行うことは許可されないと思います。

于 2012-12-06T17:30:49.823 に答える