javascript:带有远程源的iframe的GoToPage

时间:2011-09-01 18:39:13

标签: javascript iframe

我在网页上以iframe的形式从Coupons.com获得了一个Feed,我想在这个iframe上运行一些JavaScript。我希望它在除默认值之外的页面上打开,这是第一页。

如果您转到http://www.coupons.com,您可以看到我正在使用的相同Feed。

优惠券上方是1-10页的列表。如果将光标移到第3页(例如),它会显示javascript:GoToPage(3),这看起来非常简单,但我无法弄清楚如何编写脚本并使第3页显示而不是第1页。请帮助,提前谢谢 -

1 个答案:

答案 0 :(得分:0)

他们正在通过ajax重新加载页面。

类似的东西(从我回答的另一个问题复制而来):

HTML

<a href="#" onclick="page('1')"></a>
<a href="#" onclick="page('2')"></a>
<a href="#" onclick="page('3')"></a>

JAVASCRIPT

function xmlhttp() {
  var x;
  try {
    x = new ActiveXObject('Microsoft.XMLHTTP');
  } catch (e) {
    try {
      x = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      try {
        x = new XMLHttpRequest();
      } catch (e) {
        x = false;
      }
    }
  }
  return x;
}

function page(idMenu) {
  var http = xmlhttp();
  if (!http) {
    alert('XmlHttpRequest non supporté');
  } else {
    var url = 'pageOutput.php?pageNo=' + idMenu;
    http.open('GET', url, true);
    http.onreadystatechange = function () {
      if (http.readyState == 4 && http.status == 200) {
        document.getElementById('pageContent').innerHTML = http.responseText;
      }
    }
    http.send();
  }
}

现在您要做的就是创建一个PHP,您可以根据$ _GET ['pageNo']检查所调用的菜单ID和echo页面内容。如果您已经在许多PHP / HTML上获得了页面,那么您也可以包含并回显它们......

if(isset($_GET['pageNo'])){
    //echo page code here according to $_GET['pageNo'] value
}else{
    //echo main page
}

编辑:您还可以添加URL参数来引用当前页面,以便用户可以从新窗口重新加载您的页面,而不会加载参数...

编辑:iframe版本只会重新加载整个iframe,如果您在更改页面时看到,则会看到iframe闪烁。我强烈建议使用div内容,非常容易。