繁体   English   中英

HTML中的上一个/下一个按钮?

[英]Previous / Next buttons in html?

我想在我的网站上的“新闻”部分创建一个导航,当单击按钮时,它将把用户导航到下一个或上一个html。

该按钮必须在html名称的末尾添加或删除数字,因此,如果第一个html是news.html,并且单击了下一个按钮,则应转到news1.html等。

我想这可以用javascript实现,我该如何开始?

您可以使用window.location获取当前页面,将其与正则表达式进行匹配以获取末尾的数字(如果存在),然后仅对其进行递增即可获得下一页,而对于上一页则将其递减。 当然,您必须弄清楚如何处理首页和末页。

例如,类似这样的方法可能会起作用:

var regex = /news(\d*)\.html/;
var index = +regex.exec(window.location.pathname)[1];

现在,您的索引将为空白(对于news.html )或一个数字。 然后,您可以使用该数字来形成下一个和上一个按钮所需的网址。

var nextUrl = "news" + (index+1) + ".html";
var prevUrl = "news" + (index-1) + ".html";

编辑:这不是最好的方法,但这是使您入门的小提琴

var path = window.location.pathname;

然后使用regex解析path ,获取当前页面数(如果有的话)并将其转换为数字,增加/减少它并从中创建您的网址。

但是,我认为您不是使用ajax,而是使用某种服务器端语言,最好在服务器端使用它。

我们不能为您做功课。 这是测试接受日期字符串的正则表达式的示例:

            // Date validation
        if (bdate != "")
        {
             if(!/^[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{4}(\.)?$/.test(bdate)||
             String(new Date(bdate.split(".")[1] + "/" + bdate.split(".")[0] + "/" + bdate.split(".")[2])) == "Invalid Date")        
            {return "Please enter a valid date in format dd.mm.yyyy"}
        }

在那里,正则表达式测试是这个表达式:/ /^[0-9]{1,2}\\.[0-9]{1,2}\\.[0-9]{4}(\\.)?$/.test(bdate)并测试字符串bdate是否适合正则表达式。 正则表达式是您可以通过将运算符放在两个正斜杠之间(如上述( /operators/ ))来构造的对象。

这是javascript regex的参考,这是一个教程 祝你好运 :)

顺便说一句,如果您不想学习任何东西,则可能应该考虑使用诸如wordpress或tumblr之类的工具。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM