JS部分
<script type="text/javascript"> 
var fastReplace = function() {
    var href = document.location.href;
    var siteUrl = window.location.port ? window.location.protocol+'//'+window.location.hostname +':'+window.location.port : window.location.protocol+'//'+window.location.hostname;
    var delimiter = href.indexOf('#!') !== -1 ? '#!wallState=' : '#wallState=';
 
    var pieces = href.split(delimiter);
    if ( pieces[1] ) {
        var pieces2 = pieces[1].split('__');
        if ( pieces2[1] && pieces2[1].length > 1) {
            window.location.replace( unescape(pieces2[1].replace(/\+/g, " ")));
        }
    }
}();
</script>
HTML部分 
<a id="tile-0" href="/business/the-dog-got-how-much-a-look-at-some-of-the-most-and-least-extravagant-inheritances-10017.gallery">

解决方案 »

  1.   

    http://hi.baidu.com/zhiqingcn/blog/item/529eae1237d56bc8c3fd78da.html
    http://www.dreamdu.com/javascript/window.location/
      

  2.   

    你想知道什么。
    location没什么。主要是他的几个属性很有用。
    hash  设置或返回从井号 (#) 开始的 URL(锚)。 
    host  设置或返回主机名和当前 URL 的端口号。 
    hostname  设置或返回当前 URL 的主机名。 
    href  设置或返回完整的 URL。 
    pathname  设置或返回当前 URL 的路径部分。
    port  设置或返回当前 URL 的端口号。 
    protocol  设置或返回当前 URL 的协议。
    search  设置或返回从问号 (?) 开始的 URL(查询部分)
    assign()  加载新的文档。 
    reload()  重新加载当前文档。 
    replace()  用新的文档替换当前文档。
      

  3.   

    JS部分
    <script type="text/javascript"> 
    var fastReplace = function() {
      var href = document.location.href;   // 获得当前页面的链接
      var siteUrl = window.location.port ? window.location.protocol+'//'+window.location.hostname +':'+window.location.port : window.location.protocol+'//'+window.location.hostname;
     // 如果端口号存在,则获得链接(http://主机名:端口号),否则获得链接(http://主机名)
      var delimiter = href.indexOf('#!') !== -1 ? '#!wallState=' : '#wallState=';
      // 设置分隔符变量,如果当前页面的链接不包含"#!",则设置分割变量为"#!wallState",如果包含则分隔符为"#wallState="。上面这个三元表达式多了一个=,"!=="应为"!="
     
      var pieces = href.split(delimiter); // 利用分隔符,分割当前链接,分割结果放在pieces变量中// 这里写法有点问题,如果pieces为null,或者长度没有超过2,是会报错的,最好加一个判断。
      if ( pieces[1] ) {   // 如果pieces的第二个元素不为空?这个写法好像也有问题
      var pieces2 = pieces[1].split('__');   // 将pieces的第二个元素用_分割,分割结果放在pieces2中。
      if ( pieces2[1] && pieces2[1].length > 1) {
      window.location.replace( unescape(pieces2[1].replace(/\+/g, " ")));
      // 当前页面链接的一个替换操作,将pieces2的第二个元素中的"+"用" "替换
      }
      }
    }();
    </script>