-1

現在、11年目のメディアコースワークの一環としてウェブサイトを構築していますが、このIf ...Else...機能を機能させることができないようです。これが私のコーディングです。

if(ifr.contentDocument.getElementById("ctl00_ctl00_cphBanner_MenuRedesign_BannerAlertsAndOptionsLoginView_BannerAlertsAndOptions_Authenticated_MessagesTextWrapper") != null){
    notify("Personalising site...")
    document.getElementById("loginButton").innerHTML = "Account Connected!";
    document.getElementById("loginButton").onclick=function(){window.location.href="//roblox.com/--place?id=91276386";}
    notify("Account connected successfully");
    hideWheel();
}else{
    notify("Could not connect account");
    hideWheel();
};

「if(...){...}else{...};」を削除しました コードから、それが機能していることがわかったので、障害は「if(...)」自体にあると確信しています。

それが役立つ場合、ifrは実際にdocument.createElement( "iframe");を使用して作成されました。iFrameには「src」があり、コンテンツが表示されたページに表示されます。

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

1

使用してみてください:

ifr.contentWindow.document

また、参照することもできます: Javascript を使用して iframe 要素にアクセスするにはどうすればよいですか?

于 2012-09-28T22:01:18.463 に答える
0

これを試して:

var x = document.getElementById("ctl00_ctl00_cphBanner_MenuRedesign_BannerAlertsAndOptionsLoginView_BannerAlertsAndOptions_Authenticated_MessagesTextWrapper");
var y = (x.contentWindow || x.contentDocument);

if(y.document){

    notify("Personalising site...")
    document.getElementById("loginButton").innerHTML = "Account Connected!";
    document.getElementById("loginButton").onclick=function(){window.location.href="//roblox.com/--place?id=91276386";}
    notify("Account connected successfully");
    hideWheel();

}
else{

    notify("Could not connect account");
    hideWheel();

};

アクセスしようとしている iframe とアクセスしようとしているページは同じドメインにありますか? 別のドメインにある場合は、クロスドメインの封鎖によりアクセスできません!

また、IDが長くてビックリしましたが、そのIDは正しいですか?

于 2012-09-28T22:00:03.110 に答える