【问题标题】:jQuery - How to bind click event on label using jquery and get mouse click co-ordinates?jQuery - 如何使用 jquery 在标签上绑定点击事件并获取鼠标点击坐标?
【发布时间】:2013-07-22 10:26:16
【问题描述】:

我有以下代码来处理鼠标点击标签

//below function will be called when we click on label.
function showListClick(e, which, optWidth, item)
{
    mouseMoveHandler = function(e){
        if(e.pageX > 0 && e.pageY > 0)
            showItemList(e, which, optWidth, e.pageX, e.pageY);
    };
    jQuery("#"+item).click(mouseMoveHandler);
}

jQuery("#"+item) 是一个标签。我在点击事件上绑定了一个名为mouseMoveHandler 的处理程序,然后从该函数showItemList() 中,我正在显示一个弹出菜单。这里的问题是,在mouseMoveHandler 处理程序中,我设置了一个仅在e.pageX and e.pageY > 0 时显示弹出菜单的条件,因为当我第一次单击标签时它返回负值。

任何人都可以就此提出建议吗?

【问题讨论】:

  • 绑定事件就像 jQuery("#"+item).bind('click', mouseMoveHandler);不像 jQuery("#"+item).click(mouseMoveHandler);是否可以在 jsfiddle.net 中显示您的代码
  • 其实我有一系列函数和一些依赖代码,所以无法在 jsfiddle 中显示所有代码。但我会检查你的解决方案。
  • 我尝试了您的解决方案,但没有成功。

标签: jquery mouseevent


【解决方案1】:

@NullVoid,嘿,我试过了。

$(document).ready(function () {
    $("#foo").change(function () {
        var flag=true;
        $(document).mousemove(function(e){
            if(flag==true){
              $('#showOrHideMe').html(e.pageX +', '+ e.pageY);
                flag=false;
            }
           }); 
    });
});

Working Demo

它可能会帮助您满足您的需求。

参考Here 和鼠标点击Here

【讨论】:

  • 干!我很感激它并检查它,然后让你知道:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-16
  • 2011-03-15
  • 1970-01-01
  • 2012-10-16
相关资源
最近更新 更多