js中url跳转问题

  问题描述:列表中有不同的企业名字,每个企业名字都有一个不同的链接,用id做为参数区分。点击不同的名字,根据id的不同跳转到对应的详情页,设置连接如下:

  1. url = http://localhost:3000/test#/detail?

  2. url = http://localhost:3000/test#/detail?

  两个链接除了参数id的值不同其他的都是相同的,这样看来通过window.location.href = url;应该是能够实现跳转了吧(前提:id是真是有效的)。但是真是运行起来后发现并不像我们想象的那样正常,第一个链接跳转了,第二个链接不跳转了。

  问题原因:后来通过各种折腾,终于找出原因;因为第一次正常跳转,页面地址变成 http://localhost:3000/test#/detail?>浏览器是有更新链接的,只是页面没有实现跳转,页面没有得到刷新。

  解决办法:将跳转链接更改为 http://localhost:3000/test?>其实就是把锚点(#/detail),放到最后面,这样,锚点以前的内容就会根据id的不同而显得不一样了,这样浏览器就会为我们刷新并跳转页面了

一、iframe中几种跳转方式:

  • 当前窗口(当前iframe跳转)
    • window.location.href = url;
    • location.href = url;
    • self.location.href = url;