javascript 跟踪传入URL

a0zr77ik  于 2023-03-21  发布在  Java
关注(0)|答案(3)|浏览(116)

我有一个情况,我需要改变一些CSS的网页上的基础上关闭的网址,其中游客来自(一个结帐页),它是托管在一个不同的服务器/网站比那里的形式驻留。我有不同的形式发送此信息到结帐页上2个完全不同的网站。在这个结帐页上,如果用户来自网站A,我需要添加一个特定的类到一个div中。如果用户来自站点B,我需要添加一个不同的类到一个div中。类似这样:

if incoming URL is equal to www.abc.com, then addClass ('classABC');

if incoming URL is equal to www.xyz.com, then addClass ('classABC');

我是否提供了足够的信息来正确地评估这个问题?理想情况下,我想在jQuery中实现这一点,但不确定是否有现有的插件可以检查这一点。需要注意的一点是,并非所有提交到结帐页面的表单都位于相同的页面上(即www.xyz.com/index.html)。有些可能是通过每个网站的不同页面,所以我需要能够找出这一点的基础上关闭的主要网址。
谢谢!

mi7gmzs6

mi7gmzs61#

应该可以在服务器端读取HTTP Refferer。如果你可以把这个值放在一个隐藏的输入字段中,比如<input type="hidden" value="the referer" id="referer-value"/>,然后使用jquery读取这个隐藏的值,比如var referer = $('#referer-value').val();。但是只要你可以在服务器端读取referer,你也可以直接在服务器端修改css文件。

jaql4c8m

jaql4c8m2#

要在JavaScript/jQuery中做到这一点,你需要在页面中添加一个URL参数来指示它来自哪个站点,或者使用服务器端代码将css嵌入到页面中(这会更好)。在服务器上,你可以使用http referrer来实现这一点,但它不是100%可靠的,所以最好还是使用url参数。

k97glaaz

k97glaaz3#

switch(location.hostname) {
   case 'www.xyz.com': 
   case 'xyz.com':
      $('div#yourid').addClass('classXYZ'); break;
   case 'www.abc.com':
   case 'abc.com': 
      $('div#yourid').addClass('classABC'); break;
}

希望能有所帮助!

相关问题