【问题标题】:where to put my js for tipsy - jquery tooltip把我的 js 放在哪里让我喝醉了 - jquery 工具提示
【发布时间】:2011-02-06 22:08:36
【问题描述】:

所以我已经下载并包含在我的样式表和 JavaScript 文件“tipsy.css”和“jquery.tipsy”中。我添加了图像“tipsy.gif”并修改了它的路径。 我在我的 application.js 中放入以下内容

$(window).load(function () {
   $('#example-1').tipsy();
});    

我把这条线放在我的视野中:

<a id='example-1' href='#' title='Hello World'>Hover over me</a>

当我将鼠标悬停在它上面时,没有任何醉意的魔法起作用。只有悬停标题的标准。我在这里做错了什么?

我正在使用 ruby​​ on rails 并将其包含在我的样式表和 js 中:

<%= stylesheet_link_tag 'application','tipsy'%>
<%= javascript_include_tag "application", "jquery", "jquery.tipsy"%>

我已经尝试了很多事情,从更改我的 window.load 函数和更改我的元素的类并进行了大量的谷歌搜索,但我无法找到答案这里出了什么问题。

任何帮助将不胜感激。

【问题讨论】:

  • 我与原型库发生冲突。现在它工作正常。

标签: jquery ruby-on-rails jquery-plugins


【解决方案1】:

醉醺醺的来源被分区到正确的文件夹中。您将文件放在 stylesheets/ 到 public/stylesheets 中,依此类推。然后我会添加javascript_include_tag "jquery.tipsy"。确保查看源代码以确保它正在加载它,如果没有,那么您的名称/路径不匹配。

顺便说一下,确保你已经为 jQuery 安装了 ujs handler,否则,你仍然使用原型的 rails-default,这意味着你对 $ 函数的引用实际上被路由到原型而不是 jQuery。

【讨论】:

  • 未捕获的类型错误:对象 [object DOMWindow] 没有方法“加载”。我在 chrome 开发工具中收到此错误。它引用: $(window).load(function () { $('#example-1').tipsy(); });我应该以其他方式吗?是的,我有 jQuery.noConflict();写和我的“jquery.tipsy”被加载。并感谢您的回答。
【解决方案2】:

变化:

<%= javascript_include_tag "application", "jquery", "jquery.tipsy"%>

到:

<%= javascript_include_tag "jquery", "jquery.tipsy", "application" %>

我不知道 Ruby on rails 和 javascript_include_tag,但我假设您在 jQuery 之前加载 application.js 并在可用的地方加载。

【讨论】:

  • 可能是多部分问题,检查所有资源是否加载正确(样式表、图片、js 顺序正确等)
猜你喜欢
  • 1970-01-01
  • 2011-10-31
  • 1970-01-01
  • 2015-07-24
  • 2012-10-14
  • 2013-09-21
  • 2020-09-30
  • 1970-01-01
  • 2019-07-11
相关资源
最近更新 更多