我目前有两个不同用途的工作脚本: 1)是一个基于浏览器语言的自动重定向脚本 2)是一个脚本,它根据正在使用的设备将访问者发送到特定页面
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>var language = navigator.language || navigator.userLanguage;
window.onload=function(){
if (language.indexOf('fr') > -1) {
document.location.href = 'mysite.com/french';
} else {
document.location.href = 'mysite.com/intl'; }}</script>
<script>function DeviceDirection()
{ if(
/nokia/i.test(navigator.userAgent) ||
/Android/i.test(navigator.userAgent) )
{ window.open('mysite.com/android_and_nokia_devices'); }else{ window.open('mysite.com/all_devices'); } }</script>
我需要将这两个功能合并为一个脚本,将点击某个按钮的访问者引导到仅使用Android的法国用户专用页面,而所有其他人应该转到另一个常规页面。
我尝试输入以下代码,并以多种方式对其进行编辑,但不起作用。你能帮我把它搞定吗?提前谢谢。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>var language = navigator.language || navigator.userLanguage;
window.open=function FrenchAndroid(){
if (
/Android/i.test(navigator.userAgent) ||
language.indexOf('fr') > -1) )
{ window.open('mysite.com/android_devices_for_french_visitors/');
}else{
window.open('mysite.com/all_other_languages_and_devices'); } }
</script>
请帮助我在上面建造这个。
答案 0 :(得分:0)
我认为这段代码片段是您所需要的:
function isFrenchAndroid() {
var language = navigator.language || navigator.userLanguage;
var isAndroid = /Android/i.test(navigator.userAgent);
var isFrench = language.indexOf('fr') !== -1;
return isFrench && isAndroid;
}
var btn = document.querySelector('button');
btn.addEventListener('click', function(event) {
event.preventDefault();
if (isFrenchAndroid()) {
window.open('https://www.google.fr');
} else {
window.open('https://www.google.com');
}
});
如果设备运行Android并且浏览器的语言是法语,则函数isFrenchAndroid
将返回true
。然后单击事件附加到按钮,并在检查后打开一个新窗口。您可以在此JS Bin中看到正在运行的示例。
如果您不想打开新窗口,我建议改为使用window.location.href = 'https://www.google.fr'
。
希望它有所帮助。