【问题标题】:Plugin working out of rails but not inside rails插件在导轨外工作,但不在导轨内
【发布时间】:2017-08-27 01:17:55
【问题描述】:

我正在尝试使用一个名为 Shuffletext 的插件来给我的文本一个随机播放的效果,它可以遍历不同的字符串。这是它的代码(只需将它放在 .erb 文件中,同时尝试使其工作更容易)

<div id="wrapper"></div>

<script type="text/javascript">
$('#wrapper').ShuffleText([
           'Hello world !',
           "I'm a jquery plugin",
           "I like to <strong>shuffle text</strong> !"
   ],{loop: true, delay: 5000, shuffleSpeed: 50});
</script>

在一个只有 .html 文件和插件文件的简单文件夹中,它可以正常工作,但是当我将它放入 ruby​​ 时,它会抛出这个错误

home:24 Uncaught TypeError: $(...).ShuffleText is not a function
at home:24

我已经尝试了几个小时来尝试解决这个问题,但我很难过,任何帮助都非常感谢,如果有帮助,这里是插件的链接

https://github.com/Nyl000/ShuffleText

【问题讨论】:

    标签: ruby-on-rails plugins


    【解决方案1】:

    我想,你没有正确插入这个库。我没有找到将这个插件集成到 Rails 资产管道中的 gem,所以你应该把插件文件放到 vendor/assets/javascripts 目录中。只需将shuffletext.jquery.js 复制到此文件夹即可。

    然后你可以在 jQuery 之后添加 //= require shuffletext.jquery.js 到 manifest 文件(通常是 app/assets/javascripts/application.js),或者手动添加 javascript_include_tag 'shuffletext.jquery' 到所需的页面。

    如果您决定在清单中使用插件,则可以在插入清单的每个页面上使用它。通常它是插入布局的,所以所有使用这个布局的页面都会有它。

    如果您决定使用javascript_include_tag,您还应该将Rails.application.config.assets.precompile += %w( shuffletext.jquery.js ) 添加到您的config/initializers/assets.rb 文件中。在这种情况下,您只能在您指定了javascript_include_tag 的页面上获取您的插件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-12
      • 1970-01-01
      • 1970-01-01
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-16
      相关资源
      最近更新 更多