gpt4 book ai didi

javascript - Rails 在重新加载时触发 js 操作

转载 作者:行者123 更新时间:2023-12-02 14:51:21 26 4
gpt4 key购买 nike

我有一个rails4应用程序。我想在页面加载时触发一些 js 事件,但前提是用户来自给定页面。

默认情况下,所有评论回复都隐藏在 post#index 页面上。如果用户单击 div,则相应的回复将可见。

现在,如果用户通过单击属于 post_comment_reply 的通知进入页面,我希望在页面加载时默认显示给定的 post_comment_reply div。

Rails 中执行此操作的首选方式是什么?

js

$(document).on('click', '.open-post-comment-reply', function (event) {
var post_comment_id = $(this).data('pcid');
$('#post-comment-replies-' + post_comment_id).toggle();
});

最佳答案

按照另一位用户的建议,设置 cookie 是可行的。您还可以检查 Rails 中的 request.referrer 以了解它们来自哪里。

处理从那里触发 js 的几种方法。您可以将引用者值传递给 js,如下所示:

<div class="some-class" data-referrer="<%= request.referrer %>">

然后在你的 js 中,如果你使用 jQuery:

if ($('.some-class').data('referrer') == 'whatever_url'){
// run your code
}

您还可以直接在 View 中放置条件。可能不那么干净,但类似:

<% if request.referrer == 'whatever_url' %>
<script>
// code to run
</script>
<% end %>

关于javascript - Rails 在重新加载时触发 js 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36159641/

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