使用服务的<a>

时间:2016-07-26 11:50:50

标签: javascript php html css

I have an english and french version of my website:

*website.com/fr/index.php    
*website.com/index.php

I have a link to switch from one version to the other, I use a direct link to either :

-website.com/fr/index.php   

or

-website.com/index.php.

But i would like that the link just adds or removes the /fr after website.com.
So that no matter the page I am on, i will be able to simply switch language version without retourning to index page everytime ...

Thanks in advance for any help =)

5 个答案:

答案 0 :(得分:1)

我认为你可以做这样的事情

var domain = "yourDomain.com";
function changeToFR(){
    location.href = location.href.replace(domain, domain+"/fr");
}

function changeToEN(){
    location.href = location.href.replace(domain + "/fr", domain);
}

此功能的作用是在当前网址中添加/删除fr

或者HTML:

<a onClick="location.href = location.href.replace('yourDomain.com', 'yourDomain.com/fr');">French</a>
<a onClick="location.href = location.href.replace('yourDomain.com/fr', 'yourDomain.com');">English</a>

答案 1 :(得分:1)

您可以使用反斜杠删除index.html,这意味着相同的根目录。

<a href="index.html">Homepage</a>

与 - <a href="/">Homepage</a>

相同

你想把它链接到另一个目录,然后你可能会这样做 -

<a href="en/index.html">English</a>

相反,你可以拥有 - <a href="en">English language</a>

确保您的英语语言文件夹中包含index.html,而不是index-en.html

答案 2 :(得分:0)

您是否使用

尝试了$_SERVER['PHP_SELF']$_SERVER['REQUEST_URI']
<a href="fr<?php echo $_SERVER['PHP_SELF']; ?>">click me </a> <!-- $_SERVER['PHP_SELF']; -->
<a href="fr<?php echo $_SERVER['REQUEST_URI']; ?>">click me </a> <!-- $_SERVER['REQUEST_URI']; -->

注意:它在localhost中不起作用。如果你需要在localhost中使用它,你需要在www.abc.com网站别名上使用它,而不仅仅是localhost / abc。

答案 3 :(得分:0)

制作Javascript函数以获取当前网址

您可以使用window.location.hrefdocument.URL;

然后使用javascript拆分功能按/ tr.split("/");

拆分

在所需索引中添加fr

然后创建一个放回/ back的字符串。

然后使用此jquery代码

var trigger = $("<a>")
              .attr("href", url)
              .appendTo("body");

            trigger[0].click();
            trigger.remove();

答案 4 :(得分:0)

两个版本的一个功能。

function switchLang(){
	var currentPath = window.location.pathname;
	if(currentPath.substr(0,3) === '/fr'){
		//FR -> EN
		var newPath =  currentPath.substr(3);
		window.location.pathname = newPath; 
	}
	else{
		//EN -> FR
		var newPath = '/fr' + currentPath;
		window.location.pathname = newPath; 
	}
}
<a href="#" onclick="switchLang();return false;">Switch language</a>

对根文件夹和子文件夹进行了测试。