gpt4 book ai didi

Rails 布局文件中的 Javascript 文档元素

转载 作者:行者123 更新时间:2023-12-02 17:15:39 25 4
gpt4 key购买 nike

我正在使用 Rails 开发一个 Web 应用程序。我有单独的 html.erb 文件,我在每个文件上运行 script.js 。我想遵循 DRY,因此我想将 script.js 放入我的布局文件中,而不是每个单独的 View 文件中。

这是script.js:

if(document.documentElement.clientWidth < 570) {
//do some stuff
}

当我将其单独放入每个 View 中时效果很好,但当我仅将其放入布局文件中时则不起作用。我有一种感觉,这是因为我正在使用 document。如果这是真的,我不确定应该用什么替换 document 。如果这不是真的,那么我不确定出了什么问题。

如果您能帮助我理解为什么当我将 script.js 放入布局文件中时它不起作用,我将不胜感激。

最佳答案

你可以做什么:

将文件放入:

lib/assets/javascript或将你的文件放入vendors/assets/javascript

之后加载application.js中的文件//=require script.js

在 script.js 中,如果您只想运行少数页面的脚本,您可以添加条件。例如,您可以检查 html 页面中是否存在 div

if ($('#mydiv').length){
//do something
}

如果你使用turbolinks,情况就会改变,你将需要做更多的事情:您可以安装 jquery-turbolinks 并将您的方法放在函数中

$(document).ready(function () { /* ... */ });

关于Rails 布局文件中的 Javascript 文档元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24461818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com