Twitter的引导下拉突然不工作Twitter的引导下拉突然不工作(twitter bootstr

2019-05-13 14:29发布

我想知道,如果有人可以帮助我。 我举下拉菜单中突然停止工作。 我不知道为什么。 这是以前的工作。 我没有碰我的看法我的布局的观点,所以我觉得这个问题是不存在的。 Im相当肯定它与我的javascript做的,但我不知道它来自哪里。

我的宝石文件...

gem 'rails', '3.2.3'
gem 'bootstrap-sass', '2.0.1'
gem 'bcrypt-ruby', '3.0.1'
gem 'faker', '1.0.1'
gem 'will_paginate', '3.0.3'
gem 'bootstrap-will_paginate', '0.0.5'
gem 'devise'
gem 'carrierwave'
gem 'rmagick'
gem 'delayed_job_active_record'
gem 'daemons'
gem 'make_voteable'
gem 'admin_data'
gem 'indextank'

我的application.js是...

//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require bootstrap-dropdown
//= require bootstrap
//= require_tree .

即时猜测,也许它有某种方式与我的配置文件呢?

Answer 1:

不得不搬迁

//= require jquery

下面

//= require bootstrap

application.js


Answer 2:

如果预编译的资产不工作也尝试删除预编译的资产

rake assets:clean

我发现下拉JS被加载到两次资产管道似乎打开和关闭瞬间下拉菜单,但将努力在Heroku上/制作精细。



Answer 3:

我有同样的问题,我发现2种方法来解决它。

首先,让我告诉你我的设置:我也跟着在引导网站上的说明,以及下载自举dropdown.js。 我把它的资产/ JavaScript的。 我的application.js文件看起来像这样:

//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
//= require_tree .

下拉菜单没有工作。

我在页面的源代码,对于引导-dropdown.js脚本标记出现了两次注意到:(我已经删除了简洁无关的东西)

<script type="text/javascript" src="/assets/jquery.js?body=1">
<script type="text/javascript" src="/assets/jquery_ujs.js?body=1">
<script type="text/javascript" src="/assets/twitter/bootstrap/bootstrap-dropdown.js?body=1">
<script type="text/javascript" src="/assets/twitter/bootstrap/bootstrap-scrollspy.js?body=1">
<script type="text/javascript" src="/assets/twitter/bootstrap.js?body=1">
<script type="text/javascript" src="/assets/bootstrap-dropdown.js?body=1">
<script type="text/javascript" src="/assets/bootstrap.js?body=1">

所以我删除了行//= require_tree . 从application.js中,重新启动服务器,并在下拉工作!

然后我放回行//= require_tree . 而是删除该文件的资产/自举dropdown.js,再次它的工作!



Answer 4:

我不明白这一点,但重新排序// =需要jQuery和// =需要引导似乎已两次解决这个问题对我来说。 作为萨沙建议固定它第一移动引导上述的jquery。 然后我做了更多的工作,并准备使用在轨道上的JRuby 3.2.3部署。 预编译的资产,颤声,并在下拉菜单退出无论是在研发和生产工作。 删除公共/资产,以及一些.class文件和文件tmp中。 没有效果。 最后,我在感动中的application.js为了回到它是最后失败事件之前,即引导之前jQuery和下拉菜单重新工作。

能的改变来的application.js是触发重建一些缓存,或者说是问题的根源幕后的一些过程吗? 下一次出现这种情况,我会尝试一个微不足道的变化的application.js,看看有没有做任何事情。



Answer 5:

我正在经历这个我的机器上,但我的生产服务器运行良好。我注意到,虽然重新排序JS中的application.js需要修复开发(下拉菜单重新工作)的问题,要小心,因为这个杀了我的下拉菜单中生产。 我不得不回去,并把他们带回他们得到生产再次合作的方式。 现在我只是暂时在开发中改变他们,当我需要。



Answer 6:

再次预编译资产固定的问题对我来说



Answer 7:

I had this problem too...and it was related to rails turbolinks. On initial page load the drop downs would not work, but after a refresh they would. And, this is because with turbo links some Dom elements might not get loaded/reloaded every time. So, my drop down stopped working consistently (among other things). The rails 4 fix for this is to add the jquery.turbolinks gem https://github.com/kossnocorp/jquery.turbolinks. One thing with this gem that I found (and later came across in some blog) is that the javascript tag must be inside the head. The README does not mention this...but



Answer 8:

我发现了一个替代品! 所有这些解决方案没有工作对我来说。 而不必触发点击下拉的,我是有触发悬停代替。 穿上脚本标签页的底部。 代码: http://codedecoder.wordpress.com/2013/10/21/bootstrap-drop-down-menu-not-working-rails/

$(document).ready(function(){
    $('.navbar .dropdown').hover(function() {
        $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
    }, function() {
        $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp()
    });
n})


Answer 9:

另外,还要确保你没有//require bootstrap-sprockets您的application.js里面。 我曾评论说,它为我工作。



Answer 10:

见的Rails 3.1资产-斯特兰奇在服务发展

存在这样的情况被包括在application.js中调试模式下压缩版中的错误



Answer 11:

预编译的资产没有工作。 把下拉菜单的jQuery之前在发展工作,但不是在生产中删除下拉发展仍然工作:-O

把正确的秩序和公共/资产文件夹中删除一切由它开发工作。



Answer 12:

票务#5145最近关闭了这一点。 此修复程序被恢复,但在年底提供的应用特定的解决方案,并为我工作。 一定要清除浏览器缓存,太。



Answer 13:

移动//= require jquery低于//= require bootstrap和升级gem 'bootstrap-sass' ,到2.3.0.1,解决我的问题。

我想补充的是解决方案,我上面提到的只适用于本地主机,但不是在Heroku。 解决方案无论是在我的情况是:

//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require_tree .

gem bootstrap-sass ,2.3.0.1

<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>需要为内部“_header.html.erb”,并从“application.html.erb”删除。



Answer 14:

我有这个错误,事实证明我的CSS是防止下拉工作。

具体来说,我有“溢出:隐藏;” 在我的标题导航CSS。 去除解决了问题。



文章来源: twitter bootstrap drop down suddenly not working