如何使用 JS 不显眼地更新页面标题(在 Rails 中)

发布于 2024-07-23 02:47:23 字数 211 浏览 6 评论 0原文

每当我使用 Ajax 将博客文章加载到页面上时,我都会将页面 </code> 设置为“我的博客 - BLOGPOST_TITLE”。

当然,“我的博客 - ”也出现在我的应用程序布局中。

问题是,如何告诉我的 Javascript 有关字符串“My Blog - ”的信息,而不将其复制到我的代码中?

Whenever I load a blog post onto the page with Ajax, I set the page <title> to "My Blog - BLOGPOST_TITLE".

Of course "My Blog - " appears in my application layout as well.

The question is, how do I tell my Javascript about the string "My Blog - " without duplicating it in my code?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

十年九夏 2024-07-30 02:47:23

在 Ajax 发送到服务器之前,将 document.title 值(“我的博客”)存储到某个变量中。
然后,当响应到达时,将 document.title 设置为 document.title + ' - ' + BLOGPOST_TITLE,

这样您就可以在 HTML 中看到:

...
< 标题>我的博客< /标题>
...

在 JS 中:

var TITLE = document.title;

function getBlogSpotEntry() {
   Ajax.Request(url, {
     onSuccess: function(response) {
       var entryTitle = getTitle(response.responseText);

       document.title = TITLE + " - " + entryTitle;
     }
   })
}

Before Ajax is sent to server store document.title value ("My Blog") to some variable.
Then when response arrives set document.title to document.title + ' - ' + BLOGPOST_TITLE

so you have in HTML:

...
< title>My Blog< /title>
...

and in JS:

var TITLE = document.title;

function getBlogSpotEntry() {
   Ajax.Request(url, {
     onSuccess: function(response) {
       var entryTitle = getTitle(response.responseText);

       document.title = TITLE + " - " + entryTitle;
     }
   })
}
奈何桥上唱咆哮 2024-07-30 02:47:23

我会这样(脏,但效果很好):

document.myTitlePrefix = 'My Blog - '

然后将标题更新为

document.title = document.myTitlePrefix + blogPostTitle

I would go this way (dirty, but works well):

document.myTitlePrefix = 'My Blog - '

and then update title as

document.title = document.myTitlePrefix + blogPostTitle
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文