1

我想在访问者在 page.html 上时显示bannerA.js,并在访问者在 page_en.html 上时显示bannerB.js,依此类推,有 5 个横幅/5 个页面。

我看到我可以使用这样的代码: if(document.URL.indexOf("foo_page.html") >= 0){ ...显示您的消息 }

但我不确定,因为我有两个以上的选择。也许开关控制可以帮助?

如何使用相同的 javascript 代码执行此操作?

4

2 回答 2

2

这就是我要做的:

   var parts = window.location.pathname.replace(/\/$/, '').split('/'),
       page = parts[parts.length - 1];

    switch (page)
    {
    case "index.html":
      //Banner 1
      break;
    case "index_en.html":
      //Banner 2
      break;
    }

page 将保存您感兴趣的字符串,然后相应地进行切换。

于 2012-11-16T12:57:10.180 回答
0

依赖document.URL.indexOf("foo_page.html")不是最佳实践,因为您可以将 'foo_page.html' 作为 url 参数(http://some/somepage.html?filter =true&foo_page.html )

您可以使用公开“路径名”的 window.location 对象...在此处查看更多信息

window.location.pathname.indexOf("foo_page.html")
于 2012-11-16T12:55:46.893 回答