2013-03-14 72 views
0

我们的客户端有两个URL指向同一页面。根据用户来自哪个URL,他们希望显示和隐藏某些内容。我有以下代码,一切看起来应该工作(不是总是......),但由于某种原因,如果不计算为真。该警报出于故障排除的目的。使用jquery检测URL并更改HTML

var this_page = window.location; 
var calc_address = "DIFFERENT ADDRESS"; 

alert(this_page); 


     if(this_page == "http://www.calculatesnowguards.com/"){ 
      $('#mashead').css('background-image', 'url("../images/masthead_bg.jpg") '); 
      $('.calc_remove').hide(); 
      $('#bottom').innerHTML = calc_address; 
    } 
+1

我比'alert'更喜欢'console.log'。 =) – hjpotter92 2013-03-14 19:32:15

+0

这只适用于未指定页面的根目录。 – PlantTheIdea 2013-03-14 19:33:54

+0

建议您使用不同的服务器端构建页面,而不是使其适应客户端。 – 2013-03-14 19:41:11

回答

3

window.location不是一个字符串,它只是表示如此。它实际上是一个对象。 window.location.href是您想要比较的变量。

编辑:(在回应下面的评论。)有了这些不同的网址,为什么你会尝试直接比较它们?

if (window.location.href.indexOf("calculatesnowguards.com") >= 0) { 
    //code for calculatesnowguards.com 
} else{ 
    //code for snowguards.biz 
} 

编辑2:对不起,没有意识到,是一个Firefox唯一的功能。我扩展字符串以将其包含在我的脚本中。

+0

谢谢,我做了改变,但它仍然无法正常工作。 – Ant 2013-03-14 20:04:29

+0

更可能的是,它给你的地址不会完全符合你的要求。您需要使用正则表达式或其他类型的搜索。即使你让它在一个浏览器中运行,这也不能保证它能在所有浏览器中运行。什么是链接到此页面的2个URL? – GJK 2013-03-14 20:08:19

+0

calculatenowguards.com和snowguards.biz – Ant 2013-03-14 20:15:45