为iframe页面创建上一个下一个按钮

时间:2012-10-16 22:57:51

标签: iframe

这个主题可能有很多代码,但我似乎在寻找一种不基于历史的变体,是否可能......

所以我有这个代码......

<script type="text/javascript">
var pages=new Array();

pages[0]="listItem1.html";
pages[1]="listItem2.html";
pages[2]="listItem3.html";
pages[3]="listItem4.html";
pages[4]="listItem5.html";

var i=0;
var end=pages.length;
end--;
function changeSrc(operation) {
if (operation=="next") {
if (i==end) {
  document.getElementById('the_iframe').src=pages[end];
  i=0;}
else {
  document.getElementById('the_iframe').src=pages[i];
  i++;}}
if (operation=="back") {
if (i==0) {
  document.getElementById('the_iframe').src=pages[0];
  i=end;}
else {
  document.getElementById('the_iframe').src=pages[i];
  i--;}}}
</script>
</head>

<body>

<ul id="menu" role="group">

<li><a href="listItem1.html" target="ifrm" role="treeitem">Welcome</a>
  <ul>
    <li><a href="listItem2.html" target="ifrm" role="treeitem">Ease of Access Center</a></li>
  </ul>
</li>    

<li><a href="listItem3.html" target="ifrm">Getting Started</a>
  <ul>      
    <li><a href="listItem4.html" target="ifrm">Considerations</a></li>
    <li><a href="listItem5.html" target="ifrm">Changing Perspective</a></li>
  </ul>
</li>
</ul>


<iframe id="the_iframe" scrolling="no" src="listItem1.htm" name="ifrm" style="width:540px;></iframe>


<input type="button" onClick="changeSrc('back');" value="Back" />
<input type="button" onClick="changeSrc('next');" value="Next" />

如果我点击下一个或上一个按钮,它会移动到某处,但是 ...

让我说我的iframe显示listItem2,然后我点击菜单中的listItem4(涉及一个树菜单),然后我想去listItem3然后点击后退按钮...而不是去listItem3,它转到listItem2(或者不是从4到3的页面返回的地方)。

按钮似乎是根据历史记录导航的?...但我只想要一个直接或向后的动作......我不希望我的按钮具有这种浏览器类型的功能...如果我'在listItem4上,点击下一个按钮,我希望它转到listItem5。

非常感谢您的帮助!

3 个答案:

答案 0 :(得分:0)

我不明白你的代码:

的document.getElementById( 'the_iframe')SRC =页[I];   我++;

如果要进入下一个元素并显示它,则需要先增加 i 。也许我只是错过了一些东西。

我认为您的问题是,如果用户点击您的某个直接链接,而不是代码中的“next”和“previous” i ,则不会更新。因此,如果您在第2页上单击4的链接然后单击返回,目前是2而不是4.希望对您有所帮助。如果确实如此,请务必将其标记为答案。

答案 1 :(得分:0)

为每个链接标记添加一个on click事件,这些标记将调用单个函数,就像在输入标记中一样。让函数接受一些数字的输入并将该数字分配给i。应该这样做。对不起,我无法显示任何源代码,JAVASCRIPT不是我的语言。我可以读它,但我不敢从头开始编写代码。希望这会对你有所帮助。

答案 2 :(得分:0)

好的,我会尝试代码,但如果关闭则不要降低速率。

这是你可以放在changeSrc函数之前的函数:

功能UpdateI(){i = value}

这是您要添加到标记中的链接的单击事件。当然,在这种情况下发送函数的4将被更改为适合于引用ListItem的任何内容:

onClick =“UpdateI(4)”

这对你有帮助吗?