-3

我有一个产品清单说:

laptops/prod1.html
laptops/prod2.html
laptops/prod3.html
monitors/prod1.html
monitors/prod2.html
monitors/prod3.html

我想在我的页面上有一个“循环”可用项目的按钮。

不知道该怎么做。这可以用javascript吗?

4

2 回答 2

0

设置一个主页,这不应该是静态 html 页面,而是您选择的服务器端语言。

使用脚本标签将 jquery 包含到主页中(您可以从http://jquery.com/获取 jquery )。

您的 html 可能如下所示:

<div id='content'></div>
<div>
   <a href='javascript:void(0)' id='prev' class='btn'>Previous</a>
   <a href='javascript:void(0)' id='next' class='btn'>Next</a>
</div>

在你的 js 文件中,你会有这样的东西:

var currPage = 0;
var pageList = ["laptops/prod1.html","laptops/prod2.html", "laptops/prod3.html"];
var totalPages = pageList.length;
$(".btn").on("click",function(){
   //if we are at the last page set currpage = 0 else increment currPage.
   currPage = currPage < (totalPages - 1) ? ++currPage : 0;
   var page = pageList[currPage];
   $('#content').load(currPage);
});

需要考虑的几点:

  1. 您将需要决定是在主页加载还是在单击时加载第一页
  2. 您需要设置一个 js 变量来跟踪当前加载的页面
  3. 您将需要添加一些方法来存储所有可能的页面(想想一个数组)。这可以在页面加载时打印到页面上的脚本标签。
  4. 你需要决定当你到达行尾时会发生什么。您可以循环或灰显相应的链接。

jquery 上的 jquery 加载

于 2013-02-21T23:56:05.890 回答
0
function nextProduct(incr) {
  var href = window.location.href
    , offset = (typeof(incr)==='undefined' ? 1 : incr);
  window.location = href.replace(/(\d+)\.html/, function(m, g1) {
    return (Number(g1) + offset) + '.html'
  });
}

然后您可以执行以下操作:

var button;
button = document.getElementByID('next-button');
button.addEventListener('click', function() { nextProduct(1); });
button = document.getElementByID('prev-button');
button.addEventListener('click', function() { nextProduct(-1); });
于 2013-02-21T21:19:07.930 回答