PHP
$urls = Array('www.1.com.br','www.2.com.br', 'www.3.com.br');
HTML
<iframe src="www.1.com.br" width='100%' height='100%'></iframe>
<button>Next</button>
如何单击下一个按钮只更新url数组序列中的iframe url(而不是更新整个页面(?
我还怀疑它是否是一个在php或javascript 中包含所有url的数组更好
更新
<script>
jQuery('#someFrame').submit(function(){
$.ajax({
url: 'updateUrl.php',
type: '???',
data: ????,
});
})
var currentIndex = 0;
var urls = ['www.1.com.br','www.2.com.br', 'www.3.com.br'];
document.getElementById('someButton').addEventListener('click', function () {
currentIndex = Math.min(currentIndex + 1, urls.length - 1);
document.getElementById('someFrame').setAttribute('src', urls[currentIndex]);
});
</script>
<iframe src="www.1.com.br" width='100%' height='100%' id="someFrame"></iframe>
<button id="someButton">Next</button>
什么需要更新页面Url.php,才能在不刷新的情况下刷新页面?
这不能完全用PHP完成,您需要JS才能使其工作。PHP是由Web服务器解释的,所以当它到达浏览器时,浏览器对该PHP一无所知。因此,它不可能像你希望的那样真正具有互动性。
另一方面,JavaScript非常适合这种没有刷新行为的交互。
所以类似的东西
HTML
<iframe src="www.1.com.br" width='100%' height='100%' id="someFrame"></iframe>
<button id="someButton">Next</button>
Javascript
var currentIndex = 0;
var urls = ['www.1.com.br','www.2.com.br', 'www.3.com.br'];
document.getElementById('someButton').addEventListener('click', function () {
currentIndex = Math.min(currentIndex + 1, urls.length - 1);
document.getElementById('someFrame').setAttribute('src', urls[currentIndex]);
});
添加到iframe data-current-url="1"
和data-url1
。。。。data-urlN
按下next,只需检查当前,如果有属性:data-url(current+1)
使用该属性的值并更新data-current-url="(current +1)"
如果没有这样的atribute,那么将数据当前url重置为1,并从data-url1
获取url。我们将通过这个解决方案进行循环