【问题标题】:Popovers for "Bootstrap Tour" not working“Bootstrap Tour”的弹出窗口不起作用
【发布时间】:2018-04-07 03:48:20
【问题描述】:

我一直在尝试使用“Bootstrap Tour”在我的网站上安装一个导览,我对 Javascript 和一般的编码非常陌生,而且我整天都在使用它。我想我会来这里问更有经验的人。

hi1 有时可以工作,但即便如此,它也永远不会移动到 hi2。弹出框也总是坏掉。

我试着在下面放一个小演示。

 // Instance the tour
var tour = new Tour({
  name: "tour",
  steps: [
  {
    element: "#hi",
    title: "Title of my stepbjhbhjbhm",
    content: "Content of my step buhjnkjnkuhj"
  },
  {
    element: "#hi2",
    title: "Title of my step",
    content: "Content of my step"
  }],
  container: "body",
  smartPlacement: true,
  keyboard: true,
  storage: false,
  debug: false,
  backdrop: false,
  backdropContainer: 'body',
  backdropPadding: 0,
  redirect: true,
  orphan: false,
  duration: false,
  delay: false,
  basePath: "",
  template: "<div class='popover tour'><div class='arrow'></div> <h3 class='popover-title'></h3> <div class='popover-content'></div> <div class='popover-navigation'> <button class='btn btn-default' data-role='prev'>« Prev</button> <span data-role='separator'>|</span> <button class='btn btn-default' data-role='next'>Next »</button></div><button class='btn btn-default' data-role='end'>End tour</button></div>"
});
  
// Initialize the tour
tour.init();

$( document ).ready(function() {	 
    // Start the tour
    tour.start();
});
</script>
<!-- end tour --> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tour/0.11.0/css/bootstrap-tour.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tour/0.11.0/js/bootstrap-tour.js"></script>




<div class="container-fluid">
<div class="row">
<div class="col-md-6">

<button class="btn" id="hi">Button 1</button>

</div>

<div class="col-md-6">

<button class="btn" id="hi2">Button 1</button>

</div>
</div>
</div>

【问题讨论】:

  • 您是否在开发者工具中看到任何控制台错误?
  • 对不起... 尝试发送图像但无法正常工作。我得到“ $element.data(bs.popover).tip is not a function” 整行是:“ $tip = $element.data('bs.popover') ? $element.data('bs.popover ').tip() : $element.data('popover').tip(); "
  • 使用 $element.data('bs.popover').getTipElement() ,这似乎是由于 bootstrap version4
  • 尝试将引导程序版本更改为 3,它应该适用于两者

标签: javascript jquery twitter-bootstrap bootstrap-tour


【解决方案1】:

为了达到预期的效果,请将 bootstrp 版本更改为 3 ,因为来自控制台的错误是由于 bootstrap V4 造成的

有效的cdn文件

<link href="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" rel="stylesheet"/>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tour/0.11.0/css/bootstrap-tour.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="http://cdn.jsdelivr.net/bootstrap-tour/0.9.1/js/bootstrap-tour.min.js"></script>

代码示例 - https://codepen.io/nagasai/pen/rdQOjo

对于控制台中的错误 - Uncaught TypeError: $element.data(...).tip is not a function,查看此链接了解更多详情 https://github.com/sorich87/bootstrap-tour/issues/619

【讨论】:

  • 虽然这确实有效(更改为 BS3),但它不是我项目的选项。更改为 .getTipElement() 确实修复了一些错误,尽管还会出现更多错误。我猜这次巡演是为 BS3 制作的。不要认为我有足够的经验将它完全变成 BS4 友好。感谢您尝试提供帮助。
  • 感谢@MattH 的更新 :) ,如果它有助于解决您的问题,您可以将其标记为答案
猜你喜欢
  • 2012-01-12
  • 1970-01-01
  • 2014-07-02
  • 1970-01-01
  • 1970-01-01
  • 2012-08-22
  • 2017-12-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多