JS相加问题,实现PB2的“下一贴”链接的代码

2010-12-14 17:15:01 +08:00
 2014
<a href="javascript:topicNext(tid);">下一页</a>

<xcript>
function topicNext(tid){
location.href='/t/'+(tid+1);
}
var url = this.location.href
var pos = url.lastIndexOf("/");
if(pos == -1){
pos = url.lastIndexOf("\\")
}
var tid= url.substr(pos +1);
</xcript>

问题很简单,出现在tid+1这里,当tid是1,要的是2,不是11,该怎么写呢?
4512 次点击
所在节点    问与答
7 条回复
Paranoid
2010-12-14 17:19:42 +08:00
这个基本上是利用程序实现滴,而非js.

实现原理主要看你用什么来排序,如果来排序的这个值是唯一的,那很简单,不是就很复杂了.~~~~~.
CoX
2010-12-14 17:22:30 +08:00
location.href='/t/'+(praseInt(tid)+1);
2014
2010-12-14 17:23:33 +08:00
@Paranoid 啊,我用js程序呀,改回台代码麻烦呀,还没看过~

就是简单的1+1啊,比如本帖可以跳转到 http://v2ex.appspot.com/t/5850 ,就是酱紫而已。
2014
2010-12-14 17:27:13 +08:00
@CoX 像是那么回事,但怎么无效呢?我试过之前有跳转的,不过是1跳11而已。没动静呢。
Paranoid
2010-12-14 17:27:13 +08:00
@2014 类型转换,但是这样是有bug滴.
2014
2010-12-14 17:31:39 +08:00
搞定了!再谢谢@CoX

var nTid=parseInt(tid)+1;
location.href='/t/'+nTid;
chone
2010-12-14 18:40:34 +08:00
javascript数字和string相加的时候数字会被"强制转换"为string再相加,所以需要把string先转换成数字2L那样或者 new Number('1')+1
yleo77
2010-12-14 19:19:15 +08:00
location.href='/t/'+(~~tid+1);

试试。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/5849

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX