Drupal,Bootstrap和Jquery冲突?

时间:2015-02-02 15:02:49

标签: jquery twitter-bootstrap-3 drupal-7

有人问this question,但它并没有解决我的问题,尽管它描述得很好。我正在使用

  • Drupal 7
  • Jquery 1.10
  • Bootstrap 3.0.2

当我这样做时:

<a href="#whatever">Click me</a>

它不会转到页面上应该的位置。相反,它会抛出此错误:

Uncaught TypeError: Cannot read property 'createDocumentFragment' of null

我已经尝试禁用Bootstrap的工具提示功能。不行。我不知道为什么它会在这些类型的链接上执行此操作。有什么想法吗?

更新

我在该页面上包含的所有脚本:

<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<script src="/www/sites/all/modules/jquery_update/replace/jquery/1.10/jquery.min.js?v=1.10.2"></script>
<script src="/www/misc/jquery.once.js?v=1.2"></script>
<script src="/www/misc/drupal.js?nizv5b"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.2/js/bootstrap.min.js"></script>
<script src="/www/sites/all/modules/codefilter/codefilter.js?nizv5b"></script>
<script type="text/javascript" language="javascript" src="//cdn.datatables.net/1.10.4/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" language="javascript" src="//cdn.datatables.net/plug-ins/3cfcc339e89/sorting/alt-string.js"></script>
<script type="text/javascript" language="javascript" src="//cdn.datatables.net/plug-ins/3cfcc339e89/sorting/currency.js"></script>
<script src="/www/sites/all/themes/bootstrap/js/bootstrap.js?nizv5b"></script>

2 个答案:

答案 0 :(得分:1)

我设法找到了some help here。但是,我不想使用不稳定的版本,所以我只是“欺骗”并删除导致问题的行。即在bootstrap.js我删除了:

var $fakeAnchor = $('<div/>')
   .addClass('element-invisible')
   .attr(attr, $target.attr(attr))
   .css({
      position: 'absolute',
      top: offset + 'px',
      zIndex: -1000
   })
   .appendTo(document);

而且:

$fakeAnchor.remove();

解决问题,但不确定会有什么副作用。但我确实认为这可以关闭,因为它太“本地化”了

答案 1 :(得分:1)

可以从UI禁用:https://www.drupal.org/node/2466151

Home » Administration » Appearance » Settings » Bootstrap (or your enabled Bootstrap-subtheme » Javascript » Anchors

升级到7.x-3.1-beta3为我修复了它并保持了平滑的滚动功能。