如何在 Rails 应用程序中使用任何 JavaScript 代码

how to use any javascript code in rails app?

本文关键字:任何 JavaScript 代码 Rails 应用程序      更新时间:2023-09-26

我正在使用rails4,我想在我的应用程序中包含缩放功能。我是第一个这样的例子 - http://zoomsl.sergeland.ru/example/我将.js文件放在javascripts文件夹中,并编写了函数以从页面下方脚本代码中的js文件中调用该方法,但它在控制台中说"未定义的方法"。我在源代码中检查了该文件是否位于应用程序中包含的所有js文件的列表中,并在那里找到了它。请帮忙..我错过了什么吗?

编辑:我已经将js文件包含在从上述链接下载的资产中。在模板中

 <Img  class = "my-foto"  src = "<%= p.asset1.url(:small)%>"   Data-large = "<%= p.asset1.url(:large)%>"  title = "Photos" >
<Script> 
$(document).ready(function(){
  $ ( ".my-foto" ). imagezoomsl ({  <-----Here is the error "Undefined is not a fuction
     zoomrange :  [ 3 ,  3 ] 
  }); 
});    
</ script>

再试一次:我下载了演示1.zip。在该演示中,如果未包含 zoomsl-3.0.min 文件,则会显示一条消息-请包含 zoomsl-3.0.min 文件。我在我的应用程序中复制了代码,发现它显示相同的消息,即使我已经包含它并通过控制台.log检查它。我无法理解,为什么会这样?

通过在 js 文件末尾添加控制台日志来检查 js 文件中的代码是否正在执行(确保它包含在您的应用程序中.js)还要确保在抛出文档加载事件后从页面执行调用,否则脚本标记可能会在定义 js 函数之前尝试调用。

如果你使用的是jquery:

$( document ).ready(function(){
  // call your js function here
})

redefined window.onload for pure js

您必须将

javascript文件包含在使用它的页面上,脚本标记之前的任何位置。

<℅= javascript_include_tag 'filename' %>

同时将此文件添加到assets.rb文件以进行预编译

只需转到应用程序.js并检查它是否正在使用require tree。如果您希望文件自动包含在您的页面上,则应执行此操作

我在将

引导程序实现到我的应用程序中时为 jquery 包含一个脚本标签。这造成了问题,因为我删除了该jquery行,缩放工作正常。