【问题标题】:JQuery Right Click ProblemjQuery右键点击问题
【发布时间】:2011-06-23 18:11:46
【问题描述】:

我编写了以下 JQuery,它将我的页面上动态生成的链接(ruby on rails will_paginate)更改为获取 JSON 并刷新​​页面上的元素的 GET 请求。这在它们被左键单击的情况下非常有效。但如果单击鼠标右键,则该链接仅获取来自我的服务器的 JSON 呈现信息,并在新窗口中显示原始 JSON。

如果右键单击,我怎样才能恢复到原始链接?

// will_paginate + ajax 
// updates two divs: #pages and #pagelink
// see places#search controller; passes 4 parameters to the search action

$(function(){
  $(".pagination a").live("click", function(event) {
  event.preventDefault();

  // Javascript Regular expression function; extracts page number from full url
  var extractPageNumber = function(s) {
    var r=/page=(\d+)/, m=(""+s).match(r);
    return (m) ? Number(m[1]) : undefined;
  };
  var pageregex = extractPageNumber($(this).attr('href'));
  $(".pagination").html("Page is loading...")
  $.get("/event", {  event: $("input[name=event]").val(), page: pageregex }, function(data) {
    $('#pagelink').html(data.page_link);
    $('#tweets').html(data.html);
    });
  return false;
  });
});

【问题讨论】:

  • 我看到了邪恶的live 函数。切换到delegate:$(".pagination").delegate('a',"click", function(event) { event.preventDefault(); . . .

标签: javascript jquery json will-paginate right-click


【解决方案1】:

查看How to distinguish between left and right mouse click with jQuery的答案,了解如何查看右键。

【讨论】:

  • 这似乎不起作用。直播不好看吗?
  • 我应该注意:这工作一次,只在刷新时。在我通过左键单击链接翻页后,尝试右键单击,它会恢复为 JSON
【解决方案2】:

检查event.which == 1。这表示单击鼠标左键。

【讨论】:

    猜你喜欢
    • 2016-01-06
    • 1970-01-01
    • 2016-07-18
    • 1970-01-01
    • 2013-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多