拦截用jQuery右键单击URL

时间:2011-08-09 23:22:17

标签: jquery ajax

我正在开发一个使用ajax加载内容的网站,但我也为已禁用JS的浏览器提供了实际ajax页面的语义链接:

<a href="/products/car.html">Show Cars</a>

$("a").click(function(){
$("#main").load('/products/car.html');
return false;
});

如果用户右键单击/命令单击并复制URL(www.mysite.com/products/car.html)以与朋友分享,我是否有办法在jQuery中截取该链接并提供功能?

if window.location == 'www.mysite.com/products/car.html' > Do This

2 个答案:

答案 0 :(得分:2)

为什么不呢?

if (window.location.href == 'http://mysite.com/products/cars.html')
{
    doSomething ();
}

答案 1 :(得分:0)

您无法阻止用户通过JavaScript在其浏览器栏中手动输入新网址。

但是,在你的car.html来源中,(你可能需要car.php或其他东西,取决于你的服务器端代码),你可以测试request headers来确定“接受”值。

  • 如果它类似于“text / javascript”或“application / json”,那么只需像往常一样发送JSON内容。
  • 如果是其他内容(例如“text / html”),则将其重定向到此页面以加载JSON内容,并将car.html内容作为默认加载内容。

编辑:我可能有点误解了。当car.html页面加载时,没有什么可以阻止你在页面加载时执行JavaScript来检查当前的URL&amp;将用户重定向到其他地方。