【发布时间】:2015-03-13 02:54:02
【问题描述】:
希望有人可以帮助解决这个问题。
我正在寻找简单的 JavaScript 代码,该代码将根据访问请求所来自的 IP 地址更新 a href 链接 url 并将其显示在静态 HTML 页面上。
好消息是 - IP 将是静态且固定的,它会是相同的数字,我已经拥有了。
也就是说,如果我从不同的IP地址访问同一个页面,该页面将显示不同的链接url。
虽然我可能错了,但我的理解是这可以使用“if else”逻辑编写脚本——如果检测到并匹配特定的 IP 地址,JS 会重写链接地址。
下面是我的逻辑。抱歉,我不太了解 JavaScript 语法,并使用下面的构造作为假设示例(它可能完全是一个残骸,因为我没有使用正确的语法等等),但这应该给出一般的想法:
**if (location.referrer.ip('123.45.67.89.00') > -1)**
**document.write.href = 'xxx.com';**
**else if (location.referrer.ip('123.98.76.54.00') > -1)**
**document.write.href = 'yyy.com';**
**else**
**document.write.href = 'zzz.com';**
据我了解,由于我将在公式中使用单个 IP 地址,因此可以省略以下代码:
**else if (location.referrer.ip('123.98.76.54.00') > -1)**
**document.write.href = 'yyy.com/';**
只留下这样的东西
**if (location.referrer.ip('123.45.67.89.00') > -1)**
**document.write.href = 'xxx.com';**
**else**
**document.write.href = 'zzz.com';**
同样,这可能不是完全正确的方法,需要更复杂的解决方案,因此我希望你们中的一些具有编码专业知识的人可以提供一些帮助。需要明确一点 - 脚本不应重定向页面,而应仅更新其上显示的链接后面的 url。
我知道已经有几种技术可以提供解决方案,但我的任务是让它在浏览器的客户端运行;我不允许使用 Dot.NET、ASP、JSP 等服务器端技术或 JavaScript 和静态 html 以外的任何其他技术。
如果可以这样做,有人可以建议吗?基本上,我只需要知道我上面描述的方法是否可行,如果可行,'if' 和 'else' 行的语法是什么。
非常感谢任何帮助,谢谢!
JK
【问题讨论】:
-
第一步是获取客户端的IP地址。你有没有弄清楚那部分?如果获取不到ip地址,剩下的逻辑就没用了。
-
基本上,我们需要知道在将您的逻辑转换为实际代码的过程中,您卡在了哪里。如果您希望我们采用您的逻辑并编写一个完整的程序,stackoverflow 不适合您。
标签: javascript html hyperlink href