【问题标题】:Is there any way we can change an attribute value in DOM and load page again有什么方法可以更改 DOM 中的属性值并再次加载页面
【发布时间】:2014-09-25 10:20:32
【问题描述】:

我是 javascript 和网络技术的新手。我有一个要求,我必须更改

的 lang 属性
<html lang="en-US">

在网页中的次数,然后重新加载页面。我设计了一个 chrome 扩展来更改当前标签页的 lang 属性,它运行良好,但它没有根据更改的语言环境获取正确的资源文件。它只会改变缓存中页面的语言。

我想知道,有没有什么方法可以基本加载不同语言代码的页面,而无需手动更改源代码?

  1. 我们能否将类似 document.documentElement.lang="ab-CD" 的 javascript 作为 webRequest 传递,然后加载页面

请帮忙..

【问题讨论】:

  • 使用会话或cookie来存储语言值并相应地获取数据

标签: javascript jquery html dom google-chrome-extension


【解决方案1】:

不,您不能完全在客户端执行此操作。您必须做一些事情来告诉服务器使用什么语言,然后服务器必须发回带有适当内容的 HTML 页面。

您可以做的一件事(或者更确切地说,浏览器可以做的)告诉服务器发送回什么语言是在资源的 HTTP 请求中发送 Accept-Language 标头,标识所需的语言。但除非您正在执行 ajax 请求,否则您无法从客户端代码设置该标头,由浏览器设置。

如果你想让用户决定语言,最简单的可能是为不同的语言设置不同的路径,或者一个查询字符串参数。您的服务器端代码将使用查询字符串参数,如果没有,则使用 Accept-Language 标头。

【讨论】:

    猜你喜欢
    • 2011-07-24
    • 1970-01-01
    • 2017-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-16
    相关资源
    最近更新 更多