js ecwid url redirect

时间:2016-11-06 07:18:19

标签: javascript ajax redirect

我一直在努力为从/ shop到/ shop#!/〜/开始的一系列ecwid网址设置重定向到/ shop#!/〜/ cart

我已经提出了这个代码:

  PictureBox1.Image = byteArrayToImage(imageData)

它可以正常工作,但存在问题。当我在/ shop#!/〜/ cart然后手动更改url,比如/ shop#!/〜/它将不会被重定向,直到我刷新页面。我相信这与ecwid购物车的ajax行为有关,但无法弄清楚如何对抗它。

需要帮助?

1 个答案:

答案 0 :(得分:1)

来自Ecwid的Vitaly来自这里。

当前版本的脚本中的问题是它没有像您描述的那样检测到对URL的更改。

因此,您需要分别为此类情况创建处理程序。例如,您可以这样做:

<script>
var wrong_url = ['http://example.com/shop','http://example.com/shop#','http://example.com/shop#!','http://example.com/shop#!/','http://example.com/shop#!/~','http://example.com/shop#!/~/'];
var current_url = document.URL;

// function to check current URL and make a redirect
function checkUrl(){
    for (i=0;i<wrong_url.length;i++) {
      if (current_url==wrong_url[i]) {
      document.location.replace('http://example.com/shop#!/~/cart');
      break;
            }
  }
}

// Execute checkUrl() function each time URL is changed
$(window).bind('hashchange', function() {
  checkUrl();
});

// Execute checkUrl() function on initial page load
checkUrl();
</script>