javascript - Bootstrap Tour - 每个用户具有不同值的 URL

标签 javascript twitter-bootstrap bootstrap-tour

我查看了其他问题/答案,但找不到能解决我的问题的问题/答案。我看了原文档here但这个解决方案对我来说没有意义。

以下代码中的路径根据用户的不同而变化。

onNext: function(){
        document.location.href = 'http://localhost:8080/web/client/biography';
      },

接下来,用户将根据用户名定向到不同的路径。

如何确保每个用户的 URL 都是正确的?

http://localhost:8080/web/client/biography
http://localhost:8080/web/client1/biography
http://localhost:8080/web/client2/biography

我的代码:

 <script>
// Instance the tour
var tour = new Tour({
	name: "tour",
  steps: [],
  container: "body",
  keyboard: true,
  storage: window.localStorage,
  debug: false,
  backdrop: true,
  backdropContainer: 'body',
  backdropPadding: 0,
  steps: [
  {
    element: ".logo",
    title: "Setup Wizard",
    content: "Synergistically visualize maintainable metrics vis-a-vis.",
  },
  {
    //element: "#groups",
    //backdrop: false,
  //  title: "Setup Wizard",
   // content: "Synergistically visualize maintainable metrics vis-a-vis."
   
  },
  {
    element: ".group-content",
    //backdrop: false,
    onNext: function(){
        document.location.href = 'http://localhost:8080/web/client/biography';
      },
    title: "Setup Wizard",
    content: "To get started we'd like you to setup your group subscriptions, and later tell us a bit more about yourself. Please tick your interested groups and click on Save"
  },
  {
    element: ".user-profile-portlet",
    onEnd: function(){
        document.location.href = 'http://localhost:8080/user/client/home';
      },
    title: "Setup Wizard",
    content: "Go ahead and click on 'edit' and tell us a bit more about yourself."
    
  }
 
]});

// Initialize the tour
tour.init();

// Start the tour
tour.start();
    </script>
 

最佳答案

@Adriano Repetti 的答案很好,实际上应该被视为最佳实践。然而,由于多种原因,我无法更改服务器端的许多内容,使用 liferay 门户就是其中之一!

如果其他人也有兴趣知道答案,这是我的解决方案:

在脚本中添加:

onNext: function(){
        var n=window.location.href;
        //alert(n);
        n=n.replace('/user/','/web/').replace('/groups','/biography');
        document.location.href = n;
      },

这告诉tour找到当前的url并将其分配给n。然后将/user/替换为/web/等等。然后将新值赋予 n 并告诉 onNext 函数命中它!

我希望这有帮助:)

关于javascript - Bootstrap Tour - 每个用户具有不同值的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31295098/

相关文章:

javascript - react 错误 : "SharedArrayBuffer is not defined" in Firefox

twitter-bootstrap - Bootstrap 模式关闭按钮 aria-hidden=true

java - 根据 MIME 类型为每个文件提供适当的 html5 标签,以显示在 html+bootstrap 模板中

html - Bootstrap 3 多行导航栏品牌

javascript - 如何使 Bootstrap Tour 应用 GET 参数

javascript - Bootstrap-Tour RTL Popover 位置

javascript - ajax、php、mysql 和 javascript 的棘手情况

javascript - 用于检查字符串是否包含有效脚本标记的正则表达式

javascript - localtime.js 不适用于 ajax 之后创建的元素

javascript - 使用 goTo() 条件 if/else 检查跳过 Bootstrap 中的步骤