ページにiFrameを持つ3つのURLの配列があるとします。JavaScript:配列からiFrame srcを変更する
これらの3つのURLを5秒ごとに実行してから最初にやり直すことはできますか? 理想的には、ページは同じままで、iFrame srcだけが変更されます。このような
ページにiFrameを持つ3つのURLの配列があるとします。JavaScript:配列からiFrame srcを変更する
これらの3つのURLを5秒ごとに実行してから最初にやり直すことはできますか? 理想的には、ページは同じままで、iFrame srcだけが変更されます。このような
何か作業をする必要があります:
setInterval(function(){
var u = 0;
document.getElementById('myiFrame').setAttribute('src',myUrlArray[u]);
if(u < myUrlArray.length-1){
++u;
}else{
u = 0;
}
},5000);
は、あなたがこれを持っていると仮定します。
<iframe id="ifr" src="">Your browser does not support iframes</iframe>
あなたは単にJavaScriptでこれを実行する必要があります。
var URLs = ["url1", "url2", "url3"];
var currURL = 0;
function cycle() {
currURL = (currURL + 1) % 3;
document.getElementById("ifr").src = URLs[currURL];
setTimeout(cycle, 5000);
}
cycle();
"%3"の代わりに "%URLs.length"を使用してください – Beriz
などのコードそれは常に高すぎるので、正しいマークされた答えは機能しません。ここでは、完璧に私のために働くコードは次のとおりです。
<html>
<body>
<iframe id="myiFrame" src="a.html" width="100%" height="100%"></iframe>
<script>
var myUrlArray = [
"a.html",
"b.html",
"c.html"
];
var u = 1;
setInterval(function(){
document.getElementById('myiFrame').setAttribute('src',myUrlArray[u]);
u++;
if (u == myUrlArray.length) {u = 0;}
},1000);
</script>
</body>
</html>
はい、setIntervalは私のソリューションよりも適切でしょう。 – caleb