我在 Wordpress 中使用了一个多语言插件,使用户能够在网站上更改他们的语言选项。
这个插件改变了 HTML 语言属性,例如
<html lang="en-GB">
或
<html lang="en-US">
我尝试使用以下选择器检测语言:
if ($( 'html:lang(en-us)')) {
alert('US lang detected');
}
然而,这会产生误报,因为页面下方的其他元素被设置为“en-us”,即使 opening HTML 属性设置为“en-GB”也是如此。
哪个选择器会专门检查 HTML 开头属性?
最佳答案
您的选择器是正确的,但您在 if 语句中错误地使用了它。
$( 'html:lang(en-us)')
将返回一个 jQuery 对象。 jQuery 对象始终为真,因此您的 if 语句将始终计算为真。
一个简单的解决方法是使用 .is
函数,它将返回一个 bool 值:
if ($('html').is(':lang(en-us)')) {
alert('US lang detected');
}
关于jquery - 使用 jQuery 检测 html 语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33656116/